实现自定义拦截器 感觉奇怪?? 哪位大哥帮忙
wuhaidong
2010-11-15
package org.cric.interceptor; import java.util.Date; import org.cric.action.UserAction; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.interceptor.MethodFilterInterceptor; public class TimeInterceptor extends MethodFilterInterceptor { private String timeName; public String getTimeName() { return timeName; } public void setTimeName(String timeName) { this.timeName = timeName; } protected String doIntercept(ActionInvocation invocation) throws Exception { UserAction userAction = (UserAction)invocation.getAction();//获取Action实例 System.out.println("开始执行action时间="+new Date()); Long start = System.currentTimeMillis(); String result = invocation.invoke(); System.out.println("结束执行action时间="+new Date()); Long end = System.currentTimeMillis(); System.out.println(timeName+": 执行"+(end-start)+"秒"); return result; } }
这是我自己写的拦截器,但是在打印出来这样的信息.......
开始执行action时间=Mon Nov 15 10:22:29 CST 2010 执行action时间=Mon Nov 15 10:22:33 CST 2010 结束执行action时间=Mon Nov 15 10:22:33 CST 2010 时间拦截器: 执行4094秒 开始执行action时间=Mon Nov 15 10:22:33 CST 2010 结束执行action时间=Mon Nov 15 10:22:33 CST 2010 时间拦截器: 执行0秒
为什么还要多执行一下这个控制信息……
开始执行action时间=Mon Nov 15 10:22:33 CST 2010 结束执行action时间=Mon Nov 15 10:22:33 CST 2010 时间拦截器: 执行0秒
|
|
wuhaidong
2010-11-24
怎么没有能解决问题呢……??
|