Struts2学习

来源:互联网 发布:精算 知乎 编辑:程序博客网 时间:2024/06/07 05:36

Struts2的工作原理:


(1)  客户端(Client)向Action发用一个请求(Request)

(2)  Container通过web.xml映射请求,并获得控制器(Controller)的名字

(3)  容器(Container)调用控制器(StrutsPrepareAndExecuteFilter或FilterDispatcher)。在 Struts2.1以前调用FilterDispatcher,Struts2.1以后调用StrutsPrepareAndExecuteFilter

(4)  控制器(Controller)通过ActionMapper获得Action的信息

(5)  控制器(Controller)调用ActionProxy

(6)  ActionProxy读取struts.xml文件获取action和interceptor stack的信息。

(7)  ActionProxy把request请求传递给ActionInvocation

(8)  ActionInvocation依次调用action和interceptor

(9)  根据action的配置信息,产生result

(10) Result信息返回给ActionInvocation

(11) 产生一个HttpServletResponse响应

(12) 产生的响应行为发送给客服端。

为什么使用Struts2代替Struts1.x

  1. Struts2的execute方法中的参数不会依赖serverletAPI,实现了和servlet解耦,是一种无侵入式的解耦。
  2. Struts2提供了拦截器,利用拦截器可以进行aop编程,实现权限拦截功能。
  3. Struts2提供了类型转换器,我们可以很容易的将请求参数转换成需要的类型。
  4. 提供了同种表现层技术,如Jsp、freeMaker、velocity等。
  5. 可以对指定的方法进行校验,可以轻松的实现表单的校验功能。
  6. 提供了全局范围、包范围和antion范围的国际化资源文件管理。

0 0
原创粉丝点击