Struts2工作原理
2015-10-23 17:21
447 查看
Struts2请求响应流程:
在struts2的应用中,从用户请求到服务器返回相应响应给用户端的过程中,包含了许多组件如:Controller、ActionProxy、ActionMapping、Configuration Manager、ActionInvocation、Inerceptor、Action、Result等。下面我们来具体看看这些组件有什么联系,它们之间是怎样在一起工作的。(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) 产生的响应行为发送给客服端。
相关文章推荐
- Spring MVC 整合Velocity及用法说明
- Java引用类型变量
- 我对Java Serializable(序列化)的理解和总结
- JAVA 集合的详解(转)
- Spring MVC 集成 Velocity
- Java中的Random()函数
- 在Eclipse中配置Hadoop2.6.0
- java程序——凯撒加密
- 添加Jamon到项目中
- Java中HashMap和TreeMap的区别深入理解
- Java Web基础——Action+Service +Dao三层的功能划分
- Java 版 (精华区)--Frame和Panel的区别
- eclipse下打包实践
- java HashMap的简单实现
- Java_Ant详解
- Java多线程(二)synchronized wait notify
- Struts框架学习01
- power designer 提示Could not Initialize JavaVM! 的解决方法
- java中获取当前时间的字符串以及设置时间的格式
- 【JAVA】【SSH】【Initialization of bean failed】【AopConfigException】【BeanCreationException】