码上学习通过本文主要向大家介绍了struts2.0等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
具体看下面的代码,代码很简单
public void doFilter(...){
...
try{
...
//继续执行所配置的chain中的Filter
chain.doFilter(request, response);
}finally{
//保证在所有动作执行完之后,调用cleanUp
...
cleanUp(request);
}
}
protected static void cleanUp(ServletRequest req) {
...
ActionContext.setContext(null);//清除ActionContext实例
Dispatcher.setInstance(null);//清除Dispatcher实例(Dispatcher主要是完成将url解析成对应的Action)
}
另外注明一下UtilTimerStack的push和pop是用来计算调用方法所执行的开始和结束时间,用来做性能测试的。用法如下:
String timerKey = "ActionContextCleanUp_doFilter: ";
UtilTimerStack.setActive(true);
UtilTimerStack.push(timerKey);
//调用要测试的方法。
UtilTimerStack.pop(timerKey);