1.1什么是Sturts2
Struts 2 是 Struts 的下一代产品,它是在 Struts 1 和 WebWork 技术的基础上进行了合并
全新的 Struts 2 与 Struts 1 差别巨大,但是相对于 WebWork,Struts 2 的变化很小。
Struts 2并不是一门完全独立的技术,而是建立在其他 Web 技术之上的一个 MVC 框架。Struts 2 以WebWork 为核心,采用***的机制来处理用户的请求,这种设计使得业务逻辑控制器能够与 Servlet API 完全脱离开,所以 Struts 2 可以理解为 WebWork 的更新产品。实际上,WebWork 和 Struts 社区已经合二为一,即现在的 Struts 2 社区。
1.2 回顾MVC模式
根据url绑定的Servlet,web.xml
获取数据,request.getParameter 类型转换
封装数据,request,session,application
根据业务处理结果,跳转到对应的视图
1.3 Struts快速入门
1.3.1导包
1.3.2 Action
1.3.3配置struts.xml
1.3.4配置web.xml
1.4 注意事项
必须要继承struts-default
此处完成了url和Java类的映射配置
此处完成了视图跳转的控制
1.5 Struts2实现MVC
在 Struts 2 中,
V:视图层对应视图组件,通常是指 JSP 页面,也适用于 Velocity、FreeMarker等其他视图显示技术。
M:模型层对应业务逻辑组件,它通常用于实现业务逻辑及与底层数据库的交互等。
C:系统核心控制器为 Struts 2 框架提供的 StrutsPrepareAndExecuteFilter,它是一个起过滤作用的类,能根据请求自动调用相应的 Action。而业务逻辑控制器是开发者自定义的一系列Action,在 Action 中负责调用相应的业务逻辑组件,来完成调用处理。
所以,我们一般把Action归为模型层,但是它是属于模型层的控制器
1.6 Struts2工作流程
1.7 Struts2工作模式
每次请求都会创建一个新的Action对象,与Servlet是不同的
Servlet的生命周期--单例模式
Action:每次发送一个请求,就会创建一个新的Action