Struts2工作流程

本文摘自:http://www.paper.edu.cn/      Struts2 框架应用研究  吕旭民 北京邮电大学网络教育学院,北京




        虽然 Struts2 被业界称为是一个全新的框架,但这仅仅是相对Struts1 而言。Struts2 与Struts1 相比,确实有很多革命性的改进,但它并不是全新的框架,而是在另一个赫赫有名的框架:WebWork 基础上发展起来的。由于Struts1 是应用最早的一种MVC 架构,经过多年的考验,被广大Java 开发者所接受,其稳定性和可用性毋庸置疑。相Struts1 对来说,WebWork 兴起时间比较短,要被广大开发者接受还需要一定的时间,但凭借其先进的技术优势,WebWork也逐渐受到业界的青睐。Apache 接手WebWork 项目后,吸取Struts1 和WebWork 两者的优势,成功推出了Struts2。

Struts2 的工作流程如图:

 

        一个请求在 Struts2 框架中的处理过程可分为如下几个步骤:
        (1)  用户提交一个HttpServletRequest 请求;
        (2)  请求被顺序提交到ActionContextCleanUp、Other Fillers (SiteMesh 等)、FilterDispatcher
等三层过滤器;
        (3)  核心控制器FilterDispatcher 询问ActionMapper 是否需要调用某个Action 来处理这个
请求,如果ActionMapper 决定需要调用某个Action,FilterDispatcher 就把请求交给
ActionProxy 处理;
        (4)  ActionProxy 通过Configuration Manager(Struts.xml)询问框架配置文件,找到要调用
的Action 类;
        (5)  ActionProxy 创建一个ActionInvocation 实例,ActionInvocation 根据配置加载Action
相关的拦截器(Interceptor),同时通过代理模式调用Action;
        (6)  Action 执行完后,ActionInvocation 根据struts.xml 中的配置找到对应的返回结果result。

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值