SpringBoot重寫addResourceHandlers映射文件路徑方式
重寫addResourceHandlers映射文件路徑
在看一個博客源碼發(fā)現(xiàn)頁面的圖片所映射的地址在SpringBoot靜態(tài)資源文件夾下找不到原來在這里是通過下面這段代碼,將/store/**地址映射為getStorePath()得到的地址
在此記錄以下
registry.addResourceHandler("/store/**").addResourceLocations(getStorePath());@Override
? ? public void addResourceHandlers(ResourceHandlerRegistry registry) {
? ? ? ? registry.addResourceHandler("/dist/**").addResourceLocations("classpath:/static/dist/");
? ? ? ? registry.addResourceHandler("/theme/**").addResourceLocations("classpath:/static/theme/");
? ? ? ? registry.addResourceHandler("/store/**").addResourceLocations(getStorePath());
? ? ? ? super.addResourceHandlers(registry);
? ? }
配置本地資源映射路徑 addResourceHandlers
實(shí)現(xiàn) WebMvcConfigurer,重寫addResourceHandlers(ResourceHandlerRegistry registry)方法
addResourceHandler():添加的是訪問路徑addResourceLocations():添加的是映射后的真實(shí)路徑,映射的真實(shí)路徑末尾必須加 / ,不然映射不到,這個問題困擾了我半天, / 適用于 windows和linux
如下:
package cn.mindgd.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
/**
* 攔截器配置
*/
@Configuration
public class InterceptorConfig implements WebMvcConfigurer {
/**
* @author: JiaXinMa
* @description: 訪問靜態(tài)文件
* @date: 2021/4/15
*/
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
//訪問路徑
registry.addResourceHandler("/api/upload/**")
//映射真實(shí)路徑
.addResourceLocations("file:" + System.getProperty("user.dir") + "/");//必須加"/",不然映射不到
}
}
System.getProperty(“user.dir”) 是當(dāng)前項(xiàng)目路徑

成功訪問如下

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot調(diào)用公共模塊的自定義注解失效的解決
這篇文章主要介紹了SpringBoot調(diào)用公共模塊的自定義注解失效的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-02-02
Java如何基于EasyExcel實(shí)現(xiàn)導(dǎo)入數(shù)據(jù)校驗(yàn)并生成錯誤信息Excel
這篇文章主要介紹了Java如何基于EasyExcel實(shí)現(xiàn)導(dǎo)入數(shù)據(jù)校驗(yàn)并生成錯誤信息Excel,為了優(yōu)化項(xiàng)目中的文件導(dǎo)入功能,考慮構(gòu)建一個基于EasyExcel的通用Excel導(dǎo)入框架,主要解決導(dǎo)入數(shù)據(jù)的校驗(yàn)問題,避免業(yè)務(wù)代碼中堆積大量校驗(yàn)邏輯,需要的朋友可以參考下2024-09-09
java后臺本地文件轉(zhuǎn)為MultipartFile類型的實(shí)現(xiàn)方式
在Java后臺將本地文件轉(zhuǎn)換為MultipartFile類型,可以通過使用FileItemFactory創(chuàng)建FileItem,然后使用CommonsMultipartFile類構(gòu)造一個MultipartFile對象,將本地文件流轉(zhuǎn)換為MultipartFile,getMultipartFiles()和getMultipartFiles()方法2025-02-02
從Springfox到SpringDoc OpenAPI的完整遷移指南
在SpringBoot項(xiàng)目中,API文檔是前后端協(xié)作的重要橋梁,長期以來,Springfox一直是Java生態(tài)中最流行的API文檔工具之一,但隨著SpringBoot版本的迭代,特別是2.6+版本后,Springfox的兼容性問題逐漸顯現(xiàn),所以本文介紹了從Springfox到SpringDoc OpenAPI的完整遷移指南2025-08-08

