实现自定义拦截器 感觉奇怪?? 哪位大哥帮忙

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
怎么没有能解决问题呢……??
Global site tag (gtag.js) - Google Analytics