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

SpringMVC攔截器配置及運(yùn)行流程解析

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

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

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

3. 攔截器類的編寫(xiě):

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è)務(wù)處理器被調(diào)用前的方法,若是返回false則不會(huì)繼續(xù)進(jìn)入業(yè)務(wù)處理器
  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;//會(huì)終止所有的請(qǐng)求
    }
    return true;
  }

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

  }

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

  }
}

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

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

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

<!-- 攔截器的注冊(cè) -->
  <mvc:interceptors>

    <!--先注冊(cè)先執(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在所有攔截中進(jìn)行排除,一般在通配符會(huì)有意義。-->
      <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>

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

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java基礎(chǔ)學(xué)習(xí)筆記之?dāng)?shù)組詳解

    Java基礎(chǔ)學(xué)習(xí)筆記之?dāng)?shù)組詳解

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

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

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

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

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

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

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

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

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

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

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

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

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

    Java讀寫(xiě)txt文件代碼實(shí)例

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

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

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

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

    下面小編就為大家?guī)?lái)一篇細(xì)數(shù)Java接口的概念、分類及與抽象類的區(qū)別。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-11-11

最新評(píng)論

吉木萨尔县| 丽水市| 隆昌县| 渑池县| 宁河县| 上犹县| 华宁县| 鲜城| 江陵县| 精河县| 阳西县| 天门市| 余姚市| 马边| 鲁甸县| 潜江市| 叶城县| 湖南省| 湟源县| 鄄城县| 广元市| 鄂尔多斯市| 龙川县| 西丰县| 阿合奇县| 曲麻莱县| 汕头市| 东阳市| 新源县| 胶南市| 苍梧县| 丹阳市| 普定县| 澳门| 府谷县| 哈密市| 禹州市| 都匀市| 阿城市| 荥阳市| 天全县|