拦截器的理解
Interceptor是Structs2的基石,在AOP(Aspect-Oriented Programming)中用于在某个方法或字段被访问之前,进行拦截然后在之前或之后加入某些操作。拦截是AOP的一种实现策略。框架的许多功能都是构建在在拦截器的基础之上, 比如数据校验、类型转换、文件上传与下载的文件类型限制、国际化等。并且Struts2还提供了大量的内置拦截器,这些拦截器完成了框架的大部分任务。
在Webwork的中文文档的解释为——Interceptor是Structs2的一种类,它可以动态拦截Action调用的对象、它提供了一种机制使开发者可以在一个Action执行之前或执行之后插入需要的代码,比如在执行之前阻止其执行,在执行后做一些相应的工作。
拦截器的实现原理
structs2的拦截器,当请求到达Structs2的ServletDispatcher时,Structs2会查找配置文件,并根据其配置,实例化相对的拦截器对象,然后串成一个列表(list),最后一个一个地调用列表中的拦截器。
拦截器的种类,拦截器的种类可以到structs2_default.xml中去亲自查看&#x