最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringMVC攔截器配置及運行流程解析

 更新時間:2020年06月11日 10:47:46   作者:shouyaya  
這篇文章主要介紹了SpringMVC攔截器配置及運行流程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

1.與過濾器filter的區(qū)別

2.springMVC中攔截器的必須實現(xiàn)的三個方法:

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 {


  //在業(yè)務處理器被調(diào)用前的方法,若是返回false則不會繼續(xù)進入業(yè)務處理器
  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;
  }

  //在業(yè)務處理器被調(diào)用后,dispatcher響應客戶端前的方法,一般用于生成日志文件時調(diào)用
  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>

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

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

    <!--先注冊先執(zhí)行-->
    <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>

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

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java基礎(chǔ)學習筆記之數(shù)組詳解

    Java基礎(chǔ)學習筆記之數(shù)組詳解

    這篇文章主要介紹了Java基礎(chǔ)學習筆記之數(shù)組,結(jié)合實例形式詳細分析了java的基本概念、定義、迭代、輸出、反轉(zhuǎn)、排序等常用操作技巧,需要的朋友可以參考下
    2019-08-08
  • JAVA最容易忽視的數(shù)據(jù)類型之枚舉詳解

    JAVA最容易忽視的數(shù)據(jù)類型之枚舉詳解

    這篇文章主要給大家介紹了關(guān)于JAVA最容易忽視的數(shù)據(jù)類型之枚舉的相關(guān)資料,Java中的枚舉類型是一種特殊的類型,它允許程序員定義一個固定的值集合,并為每個值分配一個名稱,枚舉類型提供了一種簡單、安全和可讀性強的方式來表示一組相關(guān)的常量,需要的朋友可以參考下
    2023-10-10
  • Spring?Cloud?Eureka(全面解析)?大白話

    Spring?Cloud?Eureka(全面解析)?大白話

    這篇文章主要介紹了Spring?Cloud?Eureka(全面解析)?大白話,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • 詳解log4j-over-slf4j與slf4j-log4j12共存stack overflow異常分析

    詳解log4j-over-slf4j與slf4j-log4j12共存stack overflow異常分析

    這篇文章主要介紹了詳解log4j-over-slf4j與slf4j-log4j12共存stack overflow異常分析,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • Java判斷數(shù)字位數(shù)的方法總結(jié)

    Java判斷數(shù)字位數(shù)的方法總結(jié)

    本文給大家整理了Java判斷數(shù)字位數(shù)的兩種常用方法,對此有興趣的可以跟著小編一起學習下。
    2018-02-02
  • 使用JPA自定義VO類型轉(zhuǎn)換(EntityUtils工具類)

    使用JPA自定義VO類型轉(zhuǎn)換(EntityUtils工具類)

    這篇文章主要介紹了使用JPA自定義VO類型轉(zhuǎn)換(EntityUtils工具類),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • 利用Spring MVC+Mybatis實現(xiàn)Mysql分頁數(shù)據(jù)查詢的過程詳解

    利用Spring MVC+Mybatis實現(xiàn)Mysql分頁數(shù)據(jù)查詢的過程詳解

    這篇文章主要給大家介紹了關(guān)于利用Spring MVC+Mybatis實現(xiàn)Mysql分頁數(shù)據(jù)查詢的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面跟著小編來一起學習學習吧。
    2017-08-08
  • Java讀寫txt文件代碼實例

    Java讀寫txt文件代碼實例

    這篇文章主要給大家介紹了關(guān)于Java讀寫txt文件的相關(guān)資料,近期處理的數(shù)據(jù)規(guī)模比較大,正好又是統(tǒng)計合并的事情,想著借助excel就可以完成了,然后就了解了下java讀取excel的事情,需要的朋友可以參考下
    2023-09-09
  • Java利用Selenium操作瀏覽器的示例詳解

    Java利用Selenium操作瀏覽器的示例詳解

    本文主要介紹如何使用java代碼利用Selenium操作瀏覽器,某些網(wǎng)頁元素加載慢,如何操作元素就會把找不到元素的異常,此時需要設(shè)置元素等待,等待元素加載完,再操作,感興趣的可以了解一下
    2023-01-01
  • 細數(shù)Java接口的概念、分類及與抽象類的區(qū)別

    細數(shù)Java接口的概念、分類及與抽象類的區(qū)別

    下面小編就為大家?guī)硪黄殧?shù)Java接口的概念、分類及與抽象類的區(qū)別。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-11-11

最新評論

韩城市| 呼伦贝尔市| 武夷山市| 福建省| 凤冈县| 子洲县| 光山县| 云梦县| 北辰区| 平谷区| 南乐县| 阳春市| 外汇| 宁津县| 耒阳市| 林周县| 西贡区| 策勒县| 乐山市| 祥云县| 丹寨县| 获嘉县| 监利县| 岳池县| 泗阳县| 合作市| 岚皋县| 勐海县| 宁城县| 馆陶县| 三门县| 虎林市| 石林| 甘德县| 大渡口区| 武鸣县| 石门县| 保康县| 娄烦县| 宣威市| 冷水江市|