中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

關于SpringMVC攔截器配置的方法

發布時間:2020-06-23 18:25:33 來源:億速云 閱讀:156 作者:清晨 欄目:編程語言

不懂關于SpringMVC攔截器配置的方法?其實想解決這個問題也不難,下面讓小編帶著大家一起學習怎么去解決,希望大家閱讀完這篇文章后大所收獲。

1.與過濾器filter的區別

關于SpringMVC攔截器配置的方法

2.springMVC中攔截器的必須實現的三個方法:

關于SpringMVC攔截器配置的方法

關于SpringMVC攔截器配置的方法

3. 攔截器類的編寫:

package com.imooc.core;

import com.imooc.bean.User;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class LoginInterceptor implements HandlerInterceptor {


  //在業務處理器被調用前的方法,若是返回false則不會繼續進入業務處理器
  public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
    User user = (User)request.getSession().getAttribute("session_user");
    if(user==null) {
      response.sendRedirect(request.getContextPath()+"/login");
      return false;//會終止所有的請求
    }
    return true;
  }

  //在業務處理器被調用后,dispatcher響應客戶端前的方法,一般用于生成日志文件時調用
  public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {

  }

  //dispatcher響應客戶端后的方法,一般用于資源的清理
  public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {

  }
}

4.在spring的配置文件中注冊攔截器:

<!-- 攔截器的注冊 -->
  <mvc:interceptors>
    <mvc:interceptor>
       <!--**表示往后的所有子目錄也包括進來-->
      <mvc:mapping path="/user/**"></mvc:mapping>
      <!--exclude-mapping在所有攔截中進行排除,一般在通配符會有意義。-->
      <!--即以下的方法不會被攔截-->
      <mvc:exclude-mapping path="/user/updatepwd"></mvc:exclude-mapping>
      <mvc:exclude-mapping path="/user/updatebackground/*"></mvc:exclude-mapping>
      <!--填寫之前配置好的攔截器-->
      <bean class="com.imooc.core.LoginInterceptor"></bean>
    </mvc:interceptor>
  </mvc:interceptors>

注意:要是有多個攔截器執行順序以spring的配置文件中的注冊攔截器順序執行:

<!-- 攔截器的注冊 -->
  <mvc:interceptors>

    <!--先注冊先執行-->
    <mvc:interceptor>
      <mvc:mapping path="/user/**"/>
      <bean class="com.imooc.core.LogInterceptor"></bean>
    </mvc:interceptor>

    <mvc:interceptor>
      <mvc:mapping path="/user/**"></mvc:mapping>
      <!--exclude-mapping在所有攔截中進行排除,一般在通配符會有意義。-->
      <mvc:exclude-mapping path="/user/updatepwd"></mvc:exclude-mapping>
      <mvc:exclude-mapping path="/user/updatebackground/*"></mvc:exclude-mapping>
      <bean class="com.imooc.core.LoginInterceptor"></bean>
    </mvc:interceptor>
  </mvc:interceptors>

其次攔截器里的方法順序:

關于SpringMVC攔截器配置的方法

感謝你能夠認真閱讀完這篇文章,希望小編分享關于SpringMVC攔截器配置的方法內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

晋宁县| 长宁县| 江阴市| 桃园县| 永善县| 卫辉市| 炎陵县| 甘洛县| 金塔县| 车致| 竹山县| 麻城市| 青冈县| 东至县| 长治市| 潼关县| 交城县| 台前县| 镇原县| 东明县| 辽源市| 栖霞市| 榕江县| 南投县| 临潭县| 成武县| 湘阴县| 札达县| 基隆市| 江口县| 钟祥市| 崇仁县| 高雄市| 江阴市| 潢川县| 哈尔滨市| 红桥区| 宁波市| 昭苏县| 舞钢市| 鸡泽县|