1.struts2的工作流程
1.Struts2与MVC:
概括地说,MVC思想将一个应用分成了Model,View,Control三个部分。三个部分以最少的耦合协同工作,从而提高应用的可扩展性和维护性。
MVC具有以下特点:
多个视图对应一个模型
模型返回的数据与显示逻辑分离
三层架构导致的低耦合性和易维护性。
控制层概念。
MVC更符合软件工程化管理的精神
struts2中:
Model对应业务逻辑组件,它通常用于实现业务逻辑方法
以及以及与底层数据库的交互等;
View对应视图组件,通常是指JSP页面,但也适用于其他视图显示技术,
如Velocity或者Excel文档;
Control对应系统核心控制器和业务逻辑控制器:
系统核心控制器为Struts2框架提供的FilterDispatcher,
它根据请求自动调用相应的Action。
而业务逻辑控制器是指开发人员自行定义的一系列Action,
在Action中负责调用相应的业务逻辑组件来完成处理。
2.Struts2体系架构:
3.Struts2 框架由3个部分组:
核心控制器:FilterDispatcher:
struts2框架的核心控制器,该控制器作为一个filter运行在web应用,
它负责拦截所有的用户请求,当用户请求到达时,该Filter会过滤用户请求
业务控制器:
用户实现Action类的实例
Struts2的模型组件
JavaEE应用里的模型组件,通常指系统的业务逻辑组件,而隐藏在系统的业务逻辑组件下面的可能还包含Dao、领域对象等组件
业务控制器:
Struts2能使用JSP、FreeMarker、Velocity等作为视图技术
4.Struts2工作流程: