1.初始化:struts框架的总控制器ActionServlet是一个Servlet,它在web.xml中配置成自己主动启动的
Servlet,在启动时总控制器会读取配置文件(struts-config.xml)的配置信息。为struts
中不同的模块初始化相应的对象。(面向对象思想)
2.发送请求:用户提交表单或通过URL向WEBserver提交请求,请求的数据用HTTP协议传给webserver。
3.form填充:struts的总控制器ActionServlet在用户提交请求时将数据放到相应的form对象中的成员
变量中。
4.派发请求:控制器依据配置信息对象ActionConfig将请求派发到详细的Action。相应的formBean一并
传给这个Action中的excute()方法。
5.处理业务:Action一般仅仅包括一个excute()方法,它负责运行相应的业务逻辑(调用其他的业务模块)
完成后返回一个ActionForward对象。server通过ActionForward对象进行转发工作。
6.返回响应:Action将业务处理的不同结果返回一个目标响应对象给总控制器。
7.查找响应:总控制器依据Action处理业务返回的目标响应对象,找到相应的资源对象,普通情况下
为jsp页面。
8.响应用户:目标响应对象将结果传递给资源对象,将结果展现给用户。
比如:
<action parameter="actions" path="/user" scope="request" type="com.zken.User" >
<forward name="success" path="/user/success.jsp" />
</action>
parameter="actions",就是表单提交时候一定要有的參数,用来调用action里的响应函数。如login.do?actions=register。
就会调用register这个函数。
path="/user",就是通过user.do来訪问action
scope="request"表示表单数据的作用范围为request
type="com.zken.User" 表示通过User这个类来响应client请求
<forward name="success" path="/user/success.jsp" />表示,当return "success"时,
页面转发到/user/success.jsp