1.Strus2系统拦截器中,timer拦截器可以实现输出Action的执行时间,素以也可以称timer拦截器为耗时拦截器。下面就在实例中使用该拦截器。从而观察Aciont的执行时间。
action
package com.sh.action;
import com.opensymphony.xwork2.ActionSupport;
public class TimerInterceptorAction extends ActionSupport {
public String execute(){
try {
Thread.sleep(1000);
} catch (Exception e) {
e.printStackTrace();
}
return SUCCESS;
}
}
struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<!-- 如果 注解的action配置改变时候不需要重新启动tomcate -->
<constant name="struts.devMode" value="false"/>
<constant name="struts.convention.classes.reload" value="true" />
<package name="default" extends="struts-default">
<action name="timerInterceptor" class="com.sh.action.TimerInterceptorAction">
<result>/index.jsp</result>
<interceptor-ref name="timer"/>
</action>
</package>
</struts>
--访问
http://localhost:8080/Struts2_TimerInterceptor/timerInterceptor.action
--控制台打印的结果
信息: Executed action [//timerInterceptor!execute] took 2656 ms.