欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Spring MVC 攔截器實(shí)現(xiàn)代碼

 更新時(shí)間:2017年02月24日 17:08:12   作者:1whispers  
本篇文章主要介紹了Spring MVC 攔截器的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。

攔截器的實(shí)現(xiàn)

1、編寫攔截器類實(shí)現(xiàn)HandlerInterceptor接口;

2、將攔截器注冊(cè)進(jìn)springmvc框架中;

3、配置攔截器的攔截規(guī)則;

其他實(shí)現(xiàn)方法

WebRequestInterceptor接口:

與上一個(gè)的區(qū)別是參數(shù)區(qū)別和prehandle的方法沒有返回值。沒有上一個(gè)功能全,因此常用第一個(gè)。

攔截器的使用場(chǎng)景

處理所有請(qǐng)求共性問題:

1、亂碼問題:用request,response參數(shù)去設(shè)置編碼;

2、解決權(quán)限驗(yàn)證問題(是否登陸,取session對(duì)象查看);

攔截器與過濾器的區(qū)別

1、攔截器Interceptor依賴于框架容器,基于反射機(jī)制,只過濾請(qǐng)求;

2、過濾器Filter依賴于Servlet容器,基于回調(diào)函數(shù),過濾范圍大;

例子

import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 
import org.springframework.web.servlet.HandlerInterceptor; 
import org.springframework.web.servlet.ModelAndView; 
 
public class TestInterceptor implements HandlerInterceptor { 
 
  /** 
   * 返回值說明是否需要將當(dāng)前的請(qǐng)求攔截下來 
   * false:請(qǐng)求將被終止 
   * true:請(qǐng)求會(huì)被繼續(xù)運(yùn)行 
   * Object handler 表示的是被攔截的請(qǐng)求的目標(biāo)對(duì)象 
   */ 
  @Override 
  public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) 
      throws Exception { 
    System.out.println("TestInterceptor.preHandle()"); 
    return true; 
  } 
  /** 
   * modelAndView: 
   *   可以通過modelAndView參數(shù)改變顯示的視圖,或者修改發(fā)往視圖的方法 
   */ 
  @Override 
  public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, 
      ModelAndView modelAndView) throws Exception { 
    System.out.println("TestInterceptor.postHandle()"); 
     
  } 
  /** 
   * 在視圖加載完畢之后調(diào)用 
   * 常用于作于資源的銷毀,流等 
   * 類似于析構(gòu)函數(shù) 
   */ 
  @Override 
  public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) 
      throws Exception { 
    System.out.println("TestInterceptor.afterCompletion()");   
  } 
} 

注冊(cè)方式:

在springmvc的Dispatcherservlet配置文件中加入攔截器代碼;

<!-- 注冊(cè)攔截器 --> 
 <mvc:interceptors> 
  <!-- 單個(gè)攔截器:設(shè)置具體的攔截路徑 --> 
  <mvc:interceptor> 
    <mvc:mapping path="/courses/view2/*"/> 
    <bean class="com.cc.mvcdemo.interceptor.TestInterceptor"></bean> 
  </mvc:interceptor> 
   
  <!-- 第二種方式:攔截經(jīng)過當(dāng)前Dispatcherservlet的所有請(qǐng)求 --> 
  <bean class="com.cc.mvcdemo.interceptor.TestInterceptorTwo"></bean> 
   
 </mvc:interceptors> 

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

相關(guān)文章

  • java實(shí)現(xiàn)雙色球抽獎(jiǎng)算法

    java實(shí)現(xiàn)雙色球抽獎(jiǎng)算法

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)雙色球抽獎(jiǎng)算法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-05-05
  • java學(xué)習(xí)筆記之馬踏棋盤算法

    java學(xué)習(xí)筆記之馬踏棋盤算法

    這篇文章主要為大家詳細(xì)介紹了java學(xué)習(xí)筆記之馬踏棋盤算法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • SpringBoot整合Mybatis-plus實(shí)現(xiàn)多級(jí)評(píng)論功能

    SpringBoot整合Mybatis-plus實(shí)現(xiàn)多級(jí)評(píng)論功能

    本文介紹了如何使用SpringBoot整合Mybatis-plus實(shí)現(xiàn)多級(jí)評(píng)論功能,同時(shí)提供了數(shù)據(jù)庫(kù)的設(shè)計(jì)和詳細(xì)的后端代碼,前端界面使用的Vue2,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2023-05-05
  • MySqlConnector的使用教程

    MySqlConnector的使用教程

    本文詳細(xì)介紹了MySqlConnector的核心功能,包括數(shù)據(jù)變更捕獲、KafkaConnect兼容性、配置管理、版本信息、連接器任務(wù)創(chuàng)建、配置驗(yàn)證、數(shù)據(jù)庫(kù)連接建立和連接器配置創(chuàng)建等,感興趣的可以了解一下
    2024-10-10
  • java web將數(shù)據(jù)導(dǎo)出為pdf格式文件代碼片段

    java web將數(shù)據(jù)導(dǎo)出為pdf格式文件代碼片段

    這篇文章主要為大家詳細(xì)介紹了java web將數(shù)據(jù)導(dǎo)出為pdf格式文件代碼片段,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • Spring使用Setter完成依賴注入方式

    Spring使用Setter完成依賴注入方式

    這篇文章主要介紹了Spring使用Setter完成依賴注入方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • 使用JPA單項(xiàng)一對(duì)多外鍵關(guān)聯(lián)

    使用JPA單項(xiàng)一對(duì)多外鍵關(guān)聯(lián)

    這篇文章主要介紹了使用JPA單項(xiàng)一對(duì)多外鍵關(guān)聯(lián),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Java面試崗常見問題之ArrayList和LinkedList的區(qū)別

    Java面試崗常見問題之ArrayList和LinkedList的區(qū)別

    ArrayList和LinkedList作為我們Java中最常使用的集合類,很多人在被問到他們的區(qū)別時(shí),憋了半天僅僅冒出一句:一個(gè)是數(shù)組一個(gè)是鏈表。這樣回答簡(jiǎn)直讓面試官吐血。為了讓兄弟們打好基礎(chǔ),我們通過實(shí)際的使用測(cè)試,好好說一下ArrayList和LinkedList的區(qū)別這道經(jīng)典的面試題
    2022-01-01
  • java開發(fā)之spring webflow實(shí)現(xiàn)上傳單個(gè)文件及多個(gè)文件功能實(shí)例

    java開發(fā)之spring webflow實(shí)現(xiàn)上傳單個(gè)文件及多個(gè)文件功能實(shí)例

    這篇文章主要介紹了java開發(fā)之spring webflow實(shí)現(xiàn)上傳單個(gè)文件及多個(gè)文件功能,結(jié)合具體實(shí)例形式分析了spring webflow文件上傳具體操作技巧,需要的朋友可以參考下
    2017-11-11
  • Java基礎(chǔ)教程之整數(shù)運(yùn)算

    Java基礎(chǔ)教程之整數(shù)運(yùn)算

    Java的整數(shù)運(yùn)算與C語言相同,遵循四則運(yùn)算規(guī)則,下面這篇文章主要給大家介紹了關(guān)于Java基礎(chǔ)教程之整數(shù)運(yùn)算的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-03-03

最新評(píng)論