Struts 2学习(二)

来源:互联网 发布:淘宝客用户主页怎么填 编辑:程序博客网 时间:2024/06/06 06:41

  • 动态结果
  • 全局结果
  • 拦截器
    • 什么是拦截器
    • 为什么需要拦截器
    • 拦截器的工作原理
    • Struts 2自带拦截器
  • 验证框架实例
  • 国际化和本地化
    • Java程序的国际化思路
    • 国际化实例


动态结果

配置时不知道执行后的结果是哪一个,运行时才知道哪个结果作为视图显示给用户。

这里写图片描述

这里写图片描述

这里写图片描述


全局结果

全局就结果可满足一个包中多个Action共享一个结果。全局结果位于package元素内。在相应的Action中可不比再写;

这里写图片描述


拦截器

什么是拦截器?

Struts 2大多数核心功能是通过拦截器实现的,每个拦截器完成某项功能。拦截器方法在Action执行之前或者之后执行。拦截器与过滤器原理很相似。为Action提供附加功能时,无需修改Action代码,使用拦截器来提供。

拦截器栈:

  • 从结构上看,拦截器相当于多个拦截器的组合。
  • 从功能上看,拦截器栈也是拦截器

为什么需要拦截器?

早期MVC框架将一些通用操作写死在核心控制器中,致使框架灵活性不足,可扩展性降低。Struts 2将核心功能放到多个拦截器中实现,拦截器可自由选择和组合,增强了灵活性,有利于系统的解耦。

拦截器的工作原理

拦截器的执行过程是一个递归的过程。

三阶段执行周期:

  • 1:做一些Action执行前的预处理
  • 2:将控制交给后续拦截器或返回结果字符串
  • 3“:做一些Action执行后的处理

Struts 2自带拦截器

这里写图片描述


验证框架实例

新建一个实体类:

这里写图片描述

使用Struts框架建立一个JSP显示页面:
这里写图片描述

Action文件

这里写图片描述

Struts .xml配置文件

这里写图片描述

RegisterAction-validation.xml

关于Action的访问前置验证条件,通过该校验到达Action,否则无法到达 –>
这里写图片描述


国际化和本地化

这里写图片描述

Java程序的国际化思路

这里写图片描述

国际化实例

这里写图片描述

这里写图片描述

这里写图片描述