Struts2 自定义拦截器

自定义拦截器

模拟Struts2自带的拦截器,看源代码即可。

简单示例
1.实现Interceptor接口

package com.struts2.Interceptor;

import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.Interceptor;

public class MyInterceptor implements Interceptor{

	@Override
	public void destroy() {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void init() {
		// TODO Auto-generated method stub
		
	}

	@Override
	public String intercept(ActionInvocation invocation) throws Exception {
		long start = System.currentTimeMillis();
		String r = invocation.invoke();
		long end = System.currentTimeMillis();
		System.out.println("the TestAction time is"+(end-start));
		return r;
	}

}

2.struts.xml配置

<package name="test" extends="struts-default" namespace="/">
	  		<interceptors>
	  			<interceptor name="my" class="com.struts2.Interceptor.MyInterceptor"></interceptor>
	  		</interceptors>
	  	<action name="test" class="com.struts2.action.TestAction">
	  		<result>/test.jsp</result>
	  		<interceptor-ref name="my"></interceptor-ref>
	  		<!--不写默认值,my拦截器则会将struts2自带的拦截器覆盖-->
	  		<interceptor-ref name="defaultStack"></interceptor-ref>
	  		
	  	</action>
	  
	  </package>

版权声明:本文为OVO_LQ_Start原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。