首页 > 代码库 > Struts2笔记03——架构(转)
Struts2笔记03——架构(转)
原始内容:https://www.tutorialspoint.com/struts_2/basic_mvc_architecture.htm
从一个比较高的层次来看,Struts2是一个pull-MVC(或者MVC2)框架。
Struts2的 Model-View-Controller 模式通过以下五个核心组件实现:
Actions
Interceptors
Value Stack / OGNL
Results / Result types
View technologies
Struts2和传统的MVC框架略有不同,尽管有一些重叠,在Struts2中,Action扮演的是模型的角色,而非控制器。
上图描绘了Struts2的高层次架构。控制器是通过Struts2 分派servlet过滤器以及拦截器进行实现,模型是通过Actions进行实现,而视图则是结果类型和结果的结合。值栈和OGNL提供公共的thread、linking以及与其他组件之间的集成。
除了上述的组件之外,还有许多配置相关的信息。例如web应用的配置,Actions的配置,拦截器的配置,results的配置等。
这仅仅只是Struts2 MVC模式的体系结构的一个概述,在之后的章节中,我们将详细了解各个组件。
请求的生命周期(重要!!!)
基于上图,我们可以很容易地描述Struts2中请求的生命周期:
- 用户发送一个请求给服务,期望获得某些资源(比如,页面)
- 过滤分派器(FilterDispatcher)查看这个请求,然后确定适当的Action.
- 通过验证、文件上传等方式来配置“拦截器(interceptors)”功能。
- 被选中的Action执行响应请求的操作
- 另外,如果需要的话,已配置的“拦截器”可以被用来做任何“后期处理”
- 最后,由视图显示结果并返回给用户。
Struts2笔记03——架构(转)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。