SpringBoot如何訪問本地圖片
SpringBoot訪問本地圖片
SpringBoot映射本地圖片,外界可通過網(wǎng)絡(luò)路徑訪問該圖片
在工作中,我們會把圖片保存到服務(wù)器本地,比如E盤的某個目錄下。然后前端image標(biāo)簽的src屬性,填寫網(wǎng)絡(luò)路徑即可訪問到該圖片,這該如何配置呢?
有兩種方法,請繼續(xù)往下看:
1.第一種方法
我們可以修改application.yml文件,添加如下代碼:
spring:
mvc:
static-path-pattern: /image/**
#使用了此方式后,默認(rèn)靜態(tài)訪問路徑會失效,默認(rèn)路徑如下
#classpath:/META-INF/resources/,
#classpath:/resources/,
#classpath:/static/,
#classpath:/public/
resources:
static-locations: file:E:/picture/上面配置的意思是指,當(dāng)我們訪問項(xiàng)目的image路徑時,就會映射到本地E盤的picture目錄下。
假設(shè)在E盤的picture目錄下有張test.png圖片(這個圖片可能是你的業(yè)務(wù)上傳后保存的),那么我們通過http://127.0.0.1:8080/image/test.png 就可以訪問到這張圖片。
上述方法有個弊端,在某些場景下,可能會無效,比如你的項(xiàng)目中寫了某些過濾器等原因。另外,使用yml配置,也會使你靜態(tài)訪問路徑失效,要注意。
2.如果第一種方法在你的項(xiàng)目中不起作用
那你可以嘗試第二種方法,代碼如下:
/**
* @作者 yangs
* @日期 2021/9/25
* @描述 配置映射關(guān)系,可通過網(wǎng)絡(luò)路徑訪問本地文件
*/
@Configuration
public class WebConf extends WebMvcConfigurationSupport {
@Override
protected void addResourceHandlers(ResourceHandlerRegistry registry) {
//映射static路徑的請求到static目錄下
// 靜態(tài)資源訪問路徑和存放路徑配置
//registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");
// swagger訪問配置
registry.addResourceHandler("doc.html").addResourceLocations("classpath:/META-INF/resources/", "classpath:/META-INF/resources/webjars/");
//通過image訪問本地的圖片
registry.addResourceHandler("/image/**").addResourceLocations("file:E:/picture/");
}
}總結(jié)
以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java java.lang.ExceptionInInitializerError 錯誤如何解決
這篇文章主要介紹了 Java java.lang.ExceptionInInitializerError 錯誤如何解決的相關(guān)資料,需要的朋友可以參考下2017-06-06
淺談SpringBoot集成Redis實(shí)現(xiàn)緩存處理(Spring AOP實(shí)現(xiàn))
這篇文章主要介紹了淺談SpringBoot集成Redis實(shí)現(xiàn)緩存處理(Spring AOP實(shí)現(xiàn)),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-12-12
Object.wait()與Object.notify()的用法詳細(xì)解析
以下是對java中Object.wait()與Object.notify()的用法進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過來參考下2013-09-09
JAVA設(shè)計模式零基礎(chǔ)解析之單例模式的八種方式
設(shè)計模式(Design pattern)是一套被反復(fù)使用、多數(shù)人知曉的、經(jīng)過分類編目的、代碼設(shè)計經(jīng)驗(yàn)的總結(jié)。使用設(shè)計模式是為了可重用代碼、讓代碼更容易被他人理解、保證代碼可靠性2021-10-10

