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

繼承WebMvcConfigurationSupport后自動配置不生效及如何配置攔截器

 更新時間:2019年11月21日 14:10:17   作者:fmwind  
這篇文章主要介紹了繼承WebMvcConfigurationSupport后自動配置不生效及如何配置攔截器,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

網(wǎng)上有很多文章說從spring boot2.0之后在構(gòu)造spring配置文件時建議推薦直接實現(xiàn)WebMvcConfigurer或者直接繼承WebMvcConfigurationSupport ,經(jīng)測試實現(xiàn)WebMvcConfigurer是沒問題,但繼承WebMvcConfigurationSupport類是會導(dǎo)致自動配置失效的。

一、繼承WebMvcConfigurationSupport類是會導(dǎo)致自動配置失效的原因

在spring boot的自定義配置類繼承 WebMvcConfigurationSupport 后,發(fā)現(xiàn)自動配置的靜態(tài)資源路徑(classpath:/META/resources/,classpath:/resources/,classpath:/static/,classpath:/public/)不生效。

首先看一下 自動配置類的定義:

這是因為在 springboot的web自動配置類 WebMvcAutoConfiguration 上有條件注解

@ConditionalOnMissingBean(WebMvcConfigurationSupport.class)

這個注解的意思是在項目類路徑中 缺少 WebMvcConfigurationSupport類型的bean時改自動配置類才會生效,所以繼承 WebMvcConfigurationSupport 后需要自己再重寫相應(yīng)的方法。

如果想要使用自動配置生效,又要按自己的需要重寫某些方法,比如增加 viewController ,則可以自己的配置類可以繼承 WebMvcConfigurerAdapter 這個類。不過在spring5.0版本后這個類被丟棄了 WebMvcConfigurerAdapter ,雖然還可以用,但是看起來不好。

這是類上的注釋,意思是spring 5.0后要使用Java8,而在Java8中接口是可以有default方法的,所以這個類就沒必要了。所以我們只需要在自定義配置類中直接實現(xiàn)

二、繼承WebMvcConfigurationSupport類如何配置攔截器的

@Configuration
public class MyConfigurer extends WebMvcConfigurationSupport {
 
@Override
 protected void addInterceptors(InterceptorRegistry registry) {
  registry.addInterceptor(new MyInterceptor()).addPathPatterns("/**").excludePathPatterns("/emp/toLogin","/emp/login","/js/**","/css/**","/images/**");
  super.addInterceptors(registry);
 }
 
 @Override
 protected void addResourceHandlers(ResourceHandlerRegistry registry) {
  registry.addResourceHandler("/**").addResourceLocations("classpath:/static/");
  super.addResourceHandlers(registry);
 }
}

注意這段代碼:

registry.addResourceHandler("/**").addResourceLocations("classpath:/static/");

由于繼承WebMvcConfigurationSupport后會導(dǎo)致自動配置失效,所以這里要指定默認的靜態(tài)資源的位置。同時要注意不能寫成

registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");

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

相關(guān)文章

  • Java interrupt()方法使用實例介紹

    Java interrupt()方法使用實例介紹

    一個線程在未正常結(jié)束之前, 被強制終止是很危險的事情. 因為它可能帶來完全預(yù)料不到的嚴重后果比如會帶著自己所持有的鎖而永遠的休眠,遲遲不歸還鎖等。 所以你看到Thread.suspend, Thread.stop等方法都被Deprecated了
    2023-02-02
  • java網(wǎng)上商城項目第1篇之用戶注冊模塊

    java網(wǎng)上商城項目第1篇之用戶注冊模塊

    這篇文章主要為大家詳細介紹了java網(wǎng)上商城項目第1篇之用戶注冊模塊,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • J2SE基礎(chǔ)之在Eclipse中運行hello world

    J2SE基礎(chǔ)之在Eclipse中運行hello world

    本文的內(nèi)容非常的簡單,跟隨世界潮流,第一個Java程序輸出“Hell World!”。希望大家能夠喜歡
    2016-05-05
  • 關(guān)于@Autowierd && @Resource 你真的了解嗎

    關(guān)于@Autowierd && @Resource 你真的了解嗎

    這篇文章主要介紹了關(guān)于@Autowierd && @Resource的具體使用,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • ScheduledExecutorService任務(wù)定時代碼示例

    ScheduledExecutorService任務(wù)定時代碼示例

    這篇文章主要介紹了ScheduledExecutorService任務(wù)定時代碼示例,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • SpringBoot環(huán)境配置知識總結(jié)

    SpringBoot環(huán)境配置知識總結(jié)

    今天帶大家了解SpringBoot環(huán)境配置的相關(guān)知識,文中有非常詳細的代碼示例,對正在學(xué)習(xí)java的小伙伴們有很好地幫助,需要的朋友可以參考下
    2021-05-05
  • springboot對壓縮請求的處理方法

    springboot對壓縮請求的處理方法

    這篇文章主要介紹了springboot對壓縮請求的處理,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-05-05
  • Java Flink與kafka實現(xiàn)實時告警功能過程

    Java Flink與kafka實現(xiàn)實時告警功能過程

    這篇文章主要介紹了Java Flink與kafka實現(xiàn)實時告警功能,本文通過示例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-01-01
  • SpringBoot集成MyBatisPlus+MySQL的實現(xiàn)

    SpringBoot集成MyBatisPlus+MySQL的實現(xiàn)

    MybatisPlus是國產(chǎn)的第三方插件, 它封裝了許多常用的CURDapi,免去了我們寫mapper.xml的重復(fù)勞動,本文主要介紹了SpringBoot集成MyBatisPlus+MySQL的實現(xiàn),感興趣的可以了解一下
    2023-10-10
  • Spring?WebClient實戰(zhàn)示例

    Spring?WebClient實戰(zhàn)示例

    本文主要介紹了Spring?WebClient實戰(zhàn)示例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01

最新評論

贵州省| 射洪县| 靖江市| 南江县| 民权县| 南康市| 临漳县| 乡城县| 大化| 东兴市| 滁州市| 中牟县| 迭部县| 广丰县| 通海县| 平山县| 四川省| 涪陵区| 吉安市| 雅江县| 宁南县| 南京市| 平湖市| 博兴县| 青海省| 同仁县| 禹州市| 汉阴县| 宁河县| 内江市| 巩留县| 丁青县| 泉州市| 兰州市| 彩票| 陈巴尔虎旗| 梧州市| 舟曲县| 同德县| 宁蒗| 嘉义市|