struts1工作原理

来源:互联网 发布:网络招商平台 编辑:程序博客网 时间:2024/06/14 21:39

Struts1共工作原理概括的讲主要包括8大步骤:

读取配置、发送请求、填充Form、派发请求、处理业务、返回响应、查找响应、响应用户

下面对每个步骤进行详细的介绍:

1.读取配置文件

       web.xml中的ActionServlet是Struts框架的总控制器(也成前端控制器),在web.xml中配置成自动启动。

该步读取配置文件struts-config.xml的配置信息,为不同的struts模块初始化响应的ModuleConfig对象,包括:

ActionConfig,ControlConfig,ForwardConfig,MessageResourcesConfig

2.发送请求

      用户提交表单或调用URL向web应用程序提交一个请求,请求的数据用http协议上传给web服务器

3.填充Form(实例化、复位、填充数据、校验、保存)

      (*.do请求)从ActionConfig中找出对应该请求的Action子类,如果没有对应的Action,控制器直接转发给JSP或者

静态页面。如果有对应的Action且这个Action有一个相应的ActionForm,ActionForm被实例化并且用http请求的数据填充其属性,并且保存在ServletContext中(即Request或Session中),这样他们就可以被其他Action对象或者JSP所调用了

4.派发请求

     控制器根据配置信息ActionConfig将请求派发到具体的Action,相应的FormBean一并传给这个Action的execute()方法。

5.处理业务

      Action一般只包含一个execute方法,它责执行相应的业务逻辑(调用其他业务模块),执行完毕返回一个ActionForward对象,控制器通过该对象来进行转发工作。

6.返回响应

      Action根据业务处理的不同结果返回一个目标响应对象给总控制器,该目标响应对象对应一个具体的jsp页面或者另一个Action.

7.查找响应

总控制器根据业务功能Action返回的目标响应对象,找到对应的资源对象,通常是一个具体的JSP页面,也可以继续跳转到下一个Action.

8.响应用户

目标相应对象将结果展现给用户用户目标响应对象(JSP),将结果页面展现给用户。

为了有助于理解,见下面两个图。


0 0
原创粉丝点击