日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring Boot静态资源访问和配置全解析

發布時間:2025/3/15 javascript 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring Boot静态资源访问和配置全解析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在web開發中,靜態資源的訪問時必不可少的,比如image、css、js等。SpringBoot對靜態資源訪問提供了很好的支持,使用其提供的基本默認配置基本可以滿足開發需求,同時,又支持開發人員進行自定義配置。

一、默認靜態資源映射規則

Spring Boot 默認將 / 所有訪問映射到以下目錄:**

classpath:/static classpath:/public classpath:/resources classpath:/META-INF/resources

接下來,在main/resources下新建static、public和resources三個文件夾,分別放入a.png、b.png和c.png三張圖片,如下:
這里寫圖片描述
啟動項目,分別訪問:

http://localhost:8083/a.png http://localhost:8083/b.png http://localhost:8083/c.png

發現都能正常訪問相應的圖片資源。那么說明,Spring Boot 默認會挨個從 public、resources和static 里面找是否存在相應的資源,如果有則直接返回。

二、自定義靜態資源映射規則

  • 自定義靜態資源映射類
  • 追溯源碼發現,在WebMvcAutoConfiguration類中,有如下代碼:

    public void addResourceHandlers(ResourceHandlerRegistry registry) {if(!this.resourceProperties.isAddMappings()) {logger.debug("Default resource handling disabled");} else {Duration cachePeriod = this.resourceProperties.getCache().getPeriod();CacheControl cacheControl = this.resourceProperties.getCache().getCachecontrol().toHttpCacheControl();if(!registry.hasMappingForPattern("/webjars/**")) {this.customizeResourceHandlerRegistration(registry.addResourceHandler(new String[]{"/webjars/**"}).addResourceLocations(new String[]{"classpath:/META-INF/resources/webjars/"}).setCachePeriod(this.getSeconds(cachePeriod)).setCacheControl(cacheControl));} // 此處做的就是靜態資源文件夾映射String staticPathPattern = this.mvcProperties.getStaticPathPattern();if(!registry.hasMappingForPattern(staticPathPattern)) {this.customizeResourceHandlerRegistration(registry.addResourceHandler(new String[]{staticPathPattern}).addResourceLocations(getResourceLocations(this.resourceProperties.getStaticLocations())).setCachePeriod(this.getSeconds(cachePeriod)).setCacheControl(cacheControl));}}}

    通過追溯staticPathPattern,在ResourceProperties類中,發現如下常量信息被設置:

    private static final String[] CLASSPATH_RESOURCE_LOCATIONS = new String[]{"classpath:/META-INF/resources/", "classpath:/resources/", "classpath:/static/", "classpath:/public/"};

    到此,就可以發現,這就是Spring Boot為我們提供的默認靜態資源映射,那么自定義映射規則的話,繼承WebMvcConfigurer即可。如下:

    @Configuration public class MyWebMvcConfig implements WebMvcConfigurer {@Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry) {// 將/static/**訪問映射到classpath:/mystatic/registry.addResourceHandler("/static/**").addResourceLocations("classpath:/mystatic/");} }

    在main/resources下新建mystatic文件夾,并放入d.png圖片。
    啟動項目,訪問如下鏈接:
    http://localhost:8083/static/d.png
    發現,可以正常請求d.png圖片。

  • 在application.properties中進行配置
  • 2.2.1 配置靜態資源訪問路徑
    在application.properties中配置如下:

    spring.mvc.static-path-pattern=/mystatic/**

    重啟項目,再訪問靜態資源,需要以mystatic開頭,如下:
    http://localhost:8083/mystatic/a.png
    這樣,仍可以訪問之前的a b c三張圖片。如果按照之前http://localhost:8083/a.png就不能再訪問到了。

    2.2.2 配置靜態資源目錄
    在application.properties中,增加如下配置:

    # 配置靜態資源訪問前綴 spring.mvc.static-path-pattern=/mystatic/** # 配置靜態資源路徑,默認配置失效 spring.resources.static-locations[0]=classpath:/mystatic spring.resources.static-locations[1]=classpath:/public

    重啟項目,訪問:
    http://localhost:8083/mystatic/a.png
    發現可以正常訪問,同理,mystatic和static中靜態資源都可以正常訪問。
    但當訪問resources和static里靜態資源時,就會404報錯,訪問不到了,這個是因為配置文件中如果進行了靜態資源路徑的配置,那么默認的配置就失效了。

    總結

    以上是生活随笔為你收集整理的Spring Boot静态资源访问和配置全解析的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 五月婷婷爱 | 天堂资源中文 | 插插操操 | 国产极品视频在线观看 | 男人天堂2021 | 91视频一区二区三区 | 亚洲成人黄色在线 | 五月丁香综合激情六月久久 | 亚洲 小说区 图片区 都市 | 少妇一级淫片免费视频 | 97久久精品人人澡人人爽 | www精品一区二区三区 | 亚洲黄色在线免费观看 | 一眉道姑 电影 | 天堂av免费在线 | 国产主播av在线 | 夜夜高潮夜夜爽国产伦精品 | 午夜偷拍福利视频 | 干成人网| 中文在线资源 | 天天操好逼 | 免费观看a视频 | 欧美啪啪网站 | 国产精品对白刺激久久久 | 亚洲欧美国产视频 | 亚洲一区二区免费在线观看 | 成人国产精品入口免费视频 | 美女被啪羞羞粉色视频 | 亚洲www| 亚洲成av人片在线观看 | 欧美激情一区二区 | 黄色片在线视频 | 一级黄色片a | 富二代成人短视频 | 少妇厨房愉情理伦bd在线观看 | 欧洲精品视频在线观看 | 国产美女在线观看 | 午夜黄色福利视频 | 亚洲图片视频小说 | 成人动漫视频在线观看 | 亚洲av成人精品午夜一区二区 | 天堂成人国产精品一区 | 欧美手机在线 | 久久久久亚洲国产 | 91精品免费在线 | 羞视频在线观看 | 欧美一区二区三区免费看 | 日本免费一区二区三区四区 | 欧美区日韩区 | 久久综合五月天 | 亚洲天堂一二三 | 中文字幕在线观看亚洲 | 欧美日韩色视频 | 日本护士取精xxxxxhd | 在线视频免费观看一区 | 麻豆视频在线免费看 | 成人欧美精品一区二区 | 午夜痒痒网| a毛片在线免费观看 | 国产精品 欧美 日韩 | 少妇太紧太爽又黄又硬又爽小说 | 欲色网站 | 久热这里只有精品6 | 中文字幕在线1 | 亚洲卡一| 亚洲精品国产精品国自产在线 | 精品黄色一级片 | 欧美美女爱爱视频 | 资源av | 久久免费精品视频 | 精品一区二区成人免费视频 | 女子spa高潮呻吟抽搐 | 91官网视频 | 91精品国产一区二区 | 一区二区三区日韩精品 | 亚洲精品男人天堂 | 九九99精品视频 | 黄网站免费视频 | 免费成人激情视频 | 精久久| 91精品国产综合久久久蜜臀图片 | 国产伦精品一区二区三区视频网站 | 五十路六十路 | 色臀av| 久久久久久日产精品 | 婷婷在线免费 | 日韩电影在线观看一区 | 国产精品嫩草影院精东 | 国产精品高清无码在线观看 | 国产东北露脸精品视频 | 姑娘第5集高清在线观看 | 热久久91| 蜜桃视频污| 欧美极品一区二区 | 97人妻人人澡人人爽人人精品 | 国产成人自拍视频在线观看 | 日韩精品高清视频 | 日韩蜜桃视频 | 国产精品无码成人网站视频 |