Struts的工作流程
2个回答
展开全部
Struts工作流程
Web应用启动时加载并初始化ActionServlet。ActionServlet从struts-config.xml中读取配置信息,把它们存放到各种配置对象中。当ActionServlet接收到一个请求时,流程如下:
1.检索和用户请求匹配的ActionMapping实例,如果不存在,就返回用户请求路径无效的信息。
2.如果ActionForm实例不存在,就创建一个ActionForm对象,把提交的表单数据保存到ActionForm中。
3.根据配置,决定是否需表单验证,若需要,则调用ActionForm的validate方法。
4.如果ActionForm的validate方法返回null或返回不包含ActionMessage的ActionErrors对象,则表示验证成功。
5.ActionServlet根据ActionMapping实例包含的映射信息决定将请求转发给哪个Action,如果Action不存在则先创建这个实例,然后调用Action的execute方法。
6.Action的execute方法返回一个ActionForward对象,ActionServlet再把请求转发给ActionForward对象指向的JSP组件。
7.ActionForward指向的JSP组件生成动态网页,返回给用户。
Web应用启动时加载并初始化ActionServlet。ActionServlet从struts-config.xml中读取配置信息,把它们存放到各种配置对象中。当ActionServlet接收到一个请求时,流程如下:
1.检索和用户请求匹配的ActionMapping实例,如果不存在,就返回用户请求路径无效的信息。
2.如果ActionForm实例不存在,就创建一个ActionForm对象,把提交的表单数据保存到ActionForm中。
3.根据配置,决定是否需表单验证,若需要,则调用ActionForm的validate方法。
4.如果ActionForm的validate方法返回null或返回不包含ActionMessage的ActionErrors对象,则表示验证成功。
5.ActionServlet根据ActionMapping实例包含的映射信息决定将请求转发给哪个Action,如果Action不存在则先创建这个实例,然后调用Action的execute方法。
6.Action的execute方法返回一个ActionForward对象,ActionServlet再把请求转发给ActionForward对象指向的JSP组件。
7.ActionForward指向的JSP组件生成动态网页,返回给用户。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询