拦截器入门(interceptor)

自定义拦截器的三个步骤:

  1.自定义一个类实现Interceptor接口(或者继承AbstractInterceptor和它的子类)。

  2.在struts2.xml中注册自定义的拦截器。

  3.在需要使用的Action中引用上述定义的拦截器,一般为了简便也可将拦截器定义为默认的拦截器,这样在不加特殊声明的情况下所有的Action都被这个拦截器拦截。

当之定义拦截器的时候,默认的拦截器不会执行,需要将默认的拦截器打开。

自定义拦截器只能从登录页面进入系统。

  Struts.xml:      

<interceptors>
<!-- 注册自定义拦截器 -->
<interceptor name="bosLogin" class="cn.itcast.bos.web.interceptor.BOSLoginInterceptor">
<!-- 指定哪些方法不拦截 -->
<param name="excludeMethods">login</param>
</interceptor>
<!-- 自定义一个拦截器栈 -->
<interceptor-stack name="bos">
<interceptor-ref name="bosLogin"></interceptor-ref>
<interceptor-ref name="defaultStack"></interceptor-ref>
</interceptor-stack>
</interceptors>

<!-- 指定默认的拦截器 -->
<default-interceptor-ref name="bos"></default-interceptor-ref>

<!-- 配置全局结果 -->
<global-results>
<result name="login">/login.jsp</result>
</global-results>

<!-- 用户操作Action -->
<action name="userAction_*" class="userAction" method="{1}">
<result name="home">/WEB-INF/pages/common/index.jsp</result>
</action>

 

自定义的拦截器:

<!-- 用户操作Action -->
<action name="userAction_*" class="userAction" method="{1}">
<result name="home">/WEB-INF/pages/common/index.jsp</result>
</action>

  

posted on 2017-02-19 15:22  骚龙大叔  阅读(139)  评论(0编辑  收藏  举报

导航