拦截器

<struts>

   <constant name="struts.devMode" value="true" />

   <package name="helloworld" extends="struts-default">

      <action name="hello"

         class="cn.w3cschool.struts2.HelloWorldAction"

         method="execute">

         <interceptor-ref name="params"/>

         <interceptor-ref name="timer" />

         <result name="success">/HelloWorld.jsp</result>

      </action>

   </package>

</struts>

 

自定义拦截器

public abstract interface Interceptor extends Serializable {

public abstract void destroy();

 

public abstract void init();

 

public abstract String intercept(ActionInvocation paramActionInvocation) throws Exception;

}

----

public abstract class AbstractInterceptor implements Interceptor

----

public class ValidateInterceptor extends AbstractInterceptor {

   public String intercept(ActionInvocation invocation)throws Exception{

      System.out.println("Pre-Processing");

      String result = invocation.invoke();

      System.out.println("Post-Processing");

      return result;

   }

}

----

<struts>

   <package name="helloworld" extends="struts-default">

      <interceptors>

         <interceptor name="myinterceptor"

            class="cn.w3cschool.struts2.MyInterceptor" />

      </interceptors>

 

      <action name="hello"

         class="cn.w3cschool.struts2.HelloWorldAction"

         method="execute">

         <interceptor-ref name="params"/>

         <interceptor-ref name="myinterceptor" />

         <result name="success">/HelloWorld.jsp</result>

      </action>

   </package>

</struts>

 

拦截器堆栈

<interceptor-stack name="validateStack">

<interceptor-ref name="defaultStack" />

<interceptor-ref name="validate" />

<interceptor-ref name="log" />

</interceptor-stack>

----

<interceptor-ref name="basicStack"/>

 

posted @ 2018-04-19 20:05  AaronCnblogs  阅读(64)  评论(0)    收藏  举报