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

Spring Boot 定制URL匹配規(guī)則的方法

 更新時(shí)間:2017年02月25日 10:27:23   作者:林祥纖  
本篇文章主要介紹了Spring Boot 定制URL匹配規(guī)則的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

事情的起源:有人問(wèn)我,說(shuō)編寫(xiě)了一個(gè)/hello訪問(wèn)路徑,但是吧,不管是輸入/hello還是/hello.html,還是/hello.xxx都能進(jìn)行訪問(wèn)。當(dāng)時(shí)我還以為他對(duì)代碼進(jìn)行處理了,后來(lái)發(fā)現(xiàn)不是,后來(lái)發(fā)現(xiàn)這是Spring Boot路由規(guī)則。好了,有廢話(huà)了下,那么看看我們解決上面這個(gè)導(dǎo)致的問(wèn)題。

構(gòu)建web應(yīng)用程序時(shí),并不是所有的URL請(qǐng)求都遵循默認(rèn)的規(guī)則。有時(shí),我們希望RESTful URL匹配的時(shí)候包含定界符“.”,這種情況在Spring中可以稱(chēng)之為“定界符定義的格式”;有時(shí),我們希望識(shí)別斜杠的存在。Spring提供了接口供開(kāi)發(fā)人員按照需求定制。

核心的開(kāi)發(fā)步驟就是兩步:

(1)啟動(dòng)類(lèi) extends WebMvcConfigurationSupport

(2)重寫(xiě)configurePathMatch方法;

具體實(shí)現(xiàn)代碼:

package com.kfit; 
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.servlet.config.annotation.PathMatchConfigurer;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
 
/**
 *
 * @author Angel --守護(hù)天使
 * @version v.0.1
 * @date 2016年7月29日下午7:06:11
 */
@SpringBootApplication
public class ApiCoreApp extends WebMvcConfigurationSupport{
  
  
  /**
   * 1、 extends WebMvcConfigurationSupport
   * 2、重寫(xiě)下面方法;
   * setUseSuffixPatternMatch : 設(shè)置是否是后綴模式匹配,如“/user”是否匹配/user.*,默認(rèn)真即匹配;
   * setUseTrailingSlashMatch : 設(shè)置是否自動(dòng)后綴路徑模式匹配,如“/user”是否匹配“/user/”,默認(rèn)真即匹配;
   */
  @Override
  publicvoid configurePathMatch(PathMatchConfigurer configurer) {
    configurer.setUseSuffixPatternMatch(false)
          .setUseTrailingSlashMatch(true);
  }
  
  publicstaticvoid main(String[] args) {
    SpringApplication.run(ApiCoreApp.class, args);
  }
}
 

其中訪問(wèn)代碼:

  @RequestMapping("/user")
  public String hello(){
    return"/user";
  }

以上代碼有兩句核心的代碼:

setUseSuffixPatternMatch(boolean useSuffixPatternMatch):

設(shè)置是否是后綴模式匹配,如“/user”是否匹配/user.*,默認(rèn)真即匹配;

當(dāng)此參數(shù)設(shè)置為true的時(shí)候,那么/user.html,/user.aa,/user.*都能是正常訪問(wèn)的。

當(dāng)此參數(shù)設(shè)置為false的時(shí)候,那么只能訪問(wèn)/user或者/user/( 這個(gè)前提是setUseTrailingSlashMatch 設(shè)置為true了)。

setUseTrailingSlashMatch (boolean useSuffixPatternMatch):

設(shè)置是否自動(dòng)后綴路徑模式匹配,如“/user”是否匹配“/user/”,默認(rèn)真即匹配;

當(dāng)此參數(shù)設(shè)置為true的會(huì)后,那么地址/user,/user/都能正常訪問(wèn)。

當(dāng)此參數(shù)設(shè)置為false的時(shí)候,那么就只能訪問(wèn)/user了。

當(dāng)以上兩個(gè)參數(shù)都設(shè)置為true的時(shí)候,那么路徑/user或者/user.aa,/user.*,/user/都是能正常訪問(wèn)的,但是類(lèi)似/user.html/ 是無(wú)法訪問(wèn)的。

當(dāng)都設(shè)置為false的時(shí)候,那么就只能訪問(wèn)/user路徑了。

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

相關(guān)文章

  • java類(lèi)與對(duì)象案例之打字游戲

    java類(lèi)與對(duì)象案例之打字游戲

    這篇文章主要為大家詳細(xì)介紹了java類(lèi)與對(duì)象案例之打字游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • 詳解SpringCloudGateway內(nèi)存泄漏問(wèn)題

    詳解SpringCloudGateway內(nèi)存泄漏問(wèn)題

    這篇文章主要介紹了詳解SpringCloudGateway內(nèi)存泄漏問(wèn)題,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • Java創(chuàng)建和啟動(dòng)線程的兩種方式實(shí)例分析

    Java創(chuàng)建和啟動(dòng)線程的兩種方式實(shí)例分析

    這篇文章主要介紹了Java創(chuàng)建和啟動(dòng)線程的兩種方式,結(jié)合實(shí)例形式分析了java多線程創(chuàng)建、使用相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下
    2019-09-09
  • 詳解處理Java中的大對(duì)象的方法

    詳解處理Java中的大對(duì)象的方法

    本文我們將講解一下對(duì)于“大對(duì)象”的優(yōu)化。這里的“大對(duì)象”,是一個(gè)泛化概念,它可能存放在?JVM?中,也可能正在網(wǎng)絡(luò)上傳輸,也可能存在于數(shù)據(jù)庫(kù)中,快跟隨小編一起學(xué)習(xí)一下
    2022-04-04
  • Maven中exec插件執(zhí)行Java程序的實(shí)現(xiàn)

    Maven中exec插件執(zhí)行Java程序的實(shí)現(xiàn)

    在Maven項(xiàng)目中,可以使用Maven的插件來(lái)執(zhí)行Java程序,本文主要介紹了Maven中exec插件執(zhí)行Java程序的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-12-12
  • java多線程和并發(fā)包入門(mén)示例

    java多線程和并發(fā)包入門(mén)示例

    這篇文章主要寫(xiě)了java多線程的使用方法和java并發(fā)包簡(jiǎn)單入門(mén)的示例,大家可以參考使用
    2013-11-11
  • Java反射機(jī)制實(shí)例代碼分享

    Java反射機(jī)制實(shí)例代碼分享

    這篇文章主要介紹了Java反射機(jī)制實(shí)例代碼分享,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-11-11
  • 一文帶你搞懂SpringBoot中自動(dòng)裝配原理

    一文帶你搞懂SpringBoot中自動(dòng)裝配原理

    這篇文章主要為大家詳細(xì)介紹了SpringBoot中自動(dòng)裝配原理的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,有需要的小伙伴可以參考下
    2025-01-01
  • Java項(xiàng)目在Idea中開(kāi)發(fā)遇到所有代碼爆紅的問(wèn)題與解決辦法

    Java項(xiàng)目在Idea中開(kāi)發(fā)遇到所有代碼爆紅的問(wèn)題與解決辦法

    今天打開(kāi)項(xiàng)目時(shí)發(fā)現(xiàn)idea竟然爆紅,通過(guò)查找相關(guān)資料用于解決,下面這篇文章主要給大家介紹了關(guān)于Java項(xiàng)目在Idea中開(kāi)發(fā)遇到所有代碼爆紅的問(wèn)題與解決辦法的相關(guān)資料,需要的朋友可以參考下
    2023-06-06
  • 淺談java String不可變的好處

    淺談java String不可變的好處

    這篇文章主要介紹了java String不可變的好處,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03

最新評(píng)論

安仁县| 信宜市| 永州市| 阜康市| 大厂| 闸北区| 奉贤区| 北宁市| 井冈山市| 玉门市| 紫阳县| 林周县| 仁寿县| 阳山县| 嘉祥县| 张家川| 剑川县| 宁南县| 枝江市| 满城县| 东乌珠穆沁旗| 蒲城县| 新龙县| 永吉县| 西藏| 竹溪县| 平定县| 秦安县| 昭平县| 西乌珠穆沁旗| 静乐县| 江油市| 明溪县| 新宾| 温州市| 广元市| 宜兰市| 延寿县| 独山县| 内丘县| 密山市|