spring boot 自定義規(guī)則訪問獲取內(nèi)部或者外部靜態(tài)資源圖片的方法
項目中需要將圖片放在磁盤上,不能將圖片放在webapp下面!
springboot默認配置基本上可以滿足我們的日常需要。但是項目中大量用戶上傳的圖片,不能放在tomcat下面,這樣子每次重新部署項目的時候,圖片就失效了,很是麻煩。
所以此時就需要自定義配置springboot的項目靜態(tài)文件映射
springboot默認的配置規(guī)則
映射 /** 到
classpath:/static classpath:/public classpath:/resources classpath:/META-INF/resources
到本地文件路徑也就是 resource/static/ 下面
訪問時可以:localhost:8080/+資源路徑+資源名
例如我的項目結(jié)構(gòu)!

此時我訪問的靜態(tài)資源為:
localhost:8080/js/jquery.min.js
如果配置 jquery.min.js 直接在static下面 訪問則是
localhost:8080/jquery.min.js
但現(xiàn)在需要自定義映射規(guī)則:
有兩種方法一種是基于配置文件,另一種是基于代碼層面配置。
1 基于配置文件
#配置內(nèi)部訪問地址和外部圖片訪問地址 /myimgs/** spring.mvc.static-path-pattern=/** spring.resources.static-locations=file:C:/Users/tizzy/Desktop/img/,classpath:/static/
映射 /** 到 本地磁盤路徑下存放的圖片,和tomcat中的圖片路徑
訪問路徑則是
localhost:8080/jquery.min.js localhost:8080/ 圖片名
2 基于代碼層面配置
@Configuration
public class WebMvcConfiguration extends WebMvcConfigurerAdapter {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
//addResourceHandler是指你想在url請求的路徑
//addResourceLocations是圖片存放的真實路徑
registry.addResourceHandler("/**").addResourceLocations("file:D://User/").addResourceLocations("classpath:/static/");
super.addResourceHandlers(registry);
}
}
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
基于spring?data?jpa?@query返回map的踩坑記錄
這篇文章主要介紹了基于spring?data?jpa?@query返回map的踩坑記錄,具有很好的參考價值,如有錯誤或未考慮完全的地方,望不吝賜教2021-11-11
詳解Mybatis內(nèi)的mapper方法為何不能重載
這篇文章主要介紹了詳解Mybatis內(nèi)的mapper方法為何不能重載,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-12-12
java.lang.UnsupportedOperationException的問題解決
本文主要介紹了java.lang.UnsupportedOperationException的問題解決,該錯誤表示調(diào)用的方法不被支持或不可用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2024-07-07
Java數(shù)據(jù)結(jié)構(gòu)及算法實例:三角數(shù)字
這篇文章主要介紹了Java數(shù)據(jù)結(jié)構(gòu)及算法實例:三角數(shù)字,本文直接給出實現(xiàn)代碼,代碼中包含詳細注釋,需要的朋友可以參考下2015-06-06

