struts2中各个拦截器的功能
拦截器 | 名字 | 说明 |
Alias Interceptor |
alias | 在不同请求之间将请求参数在不同名字 间转换,请求内容不变 |
Chaining Interceptor |
chain | 让前一个Action的属性可以被后一个 Action访问,现在和chain类型的result (<result type=”chain”>)结合使用 |
Checkbox Interceptor |
checkbox | 添加了checkbox自动处理代码,将没有 选中的checkbox的内容设定为false, 而 html默认情况下不提交没有选中的 checkbox。 |
Cookies Interceptor |
cookies |
使用配置的name,value来是指cookies |
Conversion Error Interceptor |
conversionError | 将错误从ActionContext中添加到Action 的属性字段中。 |
Create Session Interceptor |
create session | 自动的创建HttpSession,用来为需要使 用到HttpSession的拦截器服务。 |
Debugging Interceptor |
debugging | 提供不同的调试用的页面来展现内部的 数据状况。 |
Execute and Wait Interceptor |
.... | 在后台执行Action, 同时将用户带到一个 中间的等待页面。 |
Exception Interceptor |
exception | 将异常定位到一个画面 |
File Upload Interceptor |
fileUpload | 提供上次功能 |
I18n Interceptor |
i18n | 记录用户选择的locale |
Logger Interceptor |
。。。 | 输出Aciton的名字 |
Message Store Interceptor |
store | 存储或者访问实现ValidationAware接口 的Action类出现的消息,错误,字段错 误等。 |
Model Driven Interceptor |
model-driven | 如果一个类实现了ModelDriven,将 getModel得到的结果放在Value Stack 中。 |
Scoped Model Driven |
scoped-model-driven | n 如果一个Action实现了 ScopedModelDriven,则这个拦截器会从 相应的Scope中取出model调用Action 的setModel方法将其放入Action内部。 |
Parameters Interceptor |
params | 将请求中的参数设置到Action中去 |
Prepare Interceptor |
如果Acton实现了Preparable, 则该拦截 器调用Action类的prepare方法。 |
|
Scope Interceptor |
scope | 将Action状态存入session和 application的简单方法。 |
Servlet Config Interceptor |
... | 提供访问HttpServletRequest和 HttpServletResponse的方法,以Map的形式访问 |
剩下的 看图片吧 太累了 不弄了
注意一个Timer拦截器
long startTime = System.currentTimeMillis();
String result = invocation.invoke();
long executionTime = System.currentTimeMillis() - startTime;
里面就是用的拦截器中的 递归过滤的设计结构 完成的时间的计算