Struts2--ActionContext及CleanUP Filter
- public void doFilter(...){ ... try{ ...//继续执行所配置的chain中的Filterchain.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);
?