1,提升开发效率web 2,遵照规则数据库
|
Struts 2 是 Struts 的下一代产品,它是在 Struts 1 和 WebWork 技术的基础上进行了合并。安全 全新的 Struts 2 与 Struts 1 差异巨大,可是相对于 WebWork,Struts 2 的变化很小。session Struts 2并非一门彻底独立的技术,而是创建在其余 Web 技术之上的一个 MVC 框架。Struts 2 以WebWork 为核心,采用拦截器的机制来处理用户的请求,这种设计使得业务逻辑控制器可以与 Servlet API 彻底脱离开,因此 Struts 2 能够理解为 WebWork 的更新产品。实际上,WebWork 和 Struts 社区已经合二为一,即如今的 Struts 2 社区。app
|
根據url綁定對應的Servlet,web.xml框架 獲取數據,request.getParameter 类型转换jsp 封裝數據,request,session,application url 根據業務處理結果,跳轉到對應的視圖spa |
|
|
在 Struts 2 中,线程 V:视图层对应视图组件,一般是指 JSP 页面,也适用于 Velocity、FreeMarker等其余视图显示技术。 M:模型层对应业务逻辑组件,它一般用于实现业务逻辑及与底层数据库的交互等。 C:系统核心控制器为 Struts 2 框架提供的 StrutsPrepareAndExecuteFilter,它是一个起过滤做用的类,能根据请求自动调用相应的 Action。而业务逻辑控制器是开发者自定义的一系列Action,在 Action 中负责调用相应的业务逻辑组件,来完成调用处理。 因此,咱们通常把Action归为模型层,可是它是属于模型层的控制器
|
|
每次请求都会建立一个新的Action对象,与Servlet是不一样的 Servlet的生命周期--单例模式 Action:每次发送一个请求,就会建立一个新的Action |
刚才就是第一种 第二种是implements Action 第三种是extends ActionSupport |
|
a) 普通属性的方式 b) 自定义对象属性的方式
|
在 Struts 2 中,Action 已经与 Servlet API 彻底分离,但咱们在实现业务逻辑时,常常要 访问 Servlet 中的对象,如 session、application 等。 在 Struts 2 框架中访问 Servlet API 有以下几种方法: |
什么是ActionContext? 方式一:
方式二:
|
还有 ServletContextAware ServletResponseAware
|