struts2自定义拦截器并配置拦截器使其生效
生活随笔
收集整理的這篇文章主要介紹了
struts2自定义拦截器并配置拦截器使其生效
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
首先編寫(xiě)一個(gè)struts2的攔截器,要繼承?MethodFilterInterceptor
并獲取其中的方法
package star.july.d_interceptor;import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.ActionProxy; import com.opensymphony.xwork2.interceptor.MethodFilterInterceptor;//自定義一個(gè)攔截器 public class Interceptor extends MethodFilterInterceptor{@Overrideprotected String doIntercept(ActionInvocation invocation) throws Exception {//攔截器的方法//獲得代理對(duì)象ActionProxy proxy = invocation.getProxy();System.out.println(proxy);//獲取被代理對(duì)象actionObject action = proxy.getAction();System.out.println(action);//獲取action的名稱String actionName = proxy.getActionName();System.out.println(actionName);//獲得方法String method = proxy.getMethod();System.out.println(method);//獲取命名空間String namespace = proxy.getNamespace();System.out.println(namespace);//配置System.out.println(proxy.getConfig());//執(zhí)行結(jié)果System.out.println(proxy.getExecuteResult());//調(diào)用System.out.println(proxy.getInvocation());System.out.println("1、在action之前");//放行invocation.invoke();System.out.println("3、在action之后");return null;}}
再在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><package name="interceptor" namespace="/interceptor" extends="struts-default"><interceptors><!-- 為自己創(chuàng)建的攔截器配置 --><interceptor name="myinterceptor" class="star.july.d_interceptor.Interceptor" ></interceptor><interceptor-stack name="mystack"><interceptor-ref name="myinterceptor"></interceptor-ref><!-- 默認(rèn)的攔截器 --><interceptor-ref name="defaultStack"></interceptor-ref></interceptor-stack></interceptors><action name="inter_*" class="star.july.d_interceptor.TypesAction" method="{1}"><!-- 引用攔截器棧 --><interceptor-ref name="mystack"></interceptor-ref><result name="success">/property.jsp</result></action></package></struts>
總結(jié)
以上是生活随笔為你收集整理的struts2自定义拦截器并配置拦截器使其生效的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: struts2的注入参数,获取值
- 下一篇: Struts的Map