这篇文章主要介绍了SpringBoot重写addResourceHandlers映射文件路径方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
重写addResourceHandlers映射文件路径
在看一个博客源码发现页面的图片所映射的地址在SpringBoot静态资源文件夹下找不到原來在这里是通过下面这段代码,将/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
实现 WebMvcConfigurer,重写addResourceHandlers(ResourceHandlerRegistry registry)方法
addResourceHandler():添加的是访问路径addResourceLocations():添加的是映射后的真实路径,映射的真实路径末尾必须加 / ,不然映射不到,这个问题困扰了我半天, / 适用于 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: 访问静态文件
     * @date: 2021/4/15
     */
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        //访问路径
        registry.addResourceHandler("/api/upload/**")
                //映射真实路径
                .addResourceLocations("file:" + System.getProperty("user.dir") + "/");//必须加"/",不然映射不到  
    }
}
System.getProperty(“user.dir”) 是当前项目路径

成功访问如下

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程学习网。
				 沃梦达教程
				
			本文标题为:SpringBoot重写addResourceHandlers映射文件路径方式
				
        
 
            
        
             猜你喜欢
        
	     - Spring Security权限想要细化到按钮实现示例 2023-03-07
 - JSP 制作验证码的实例详解 2023-07-30
 - JSP页面间传值问题实例简析 2023-08-03
 - 基于Java Agent的premain方式实现方法耗时监控问题 2023-06-17
 - SpringBoot使用thymeleaf实现一个前端表格方法详解 2023-06-06
 - Springboot整合minio实现文件服务的教程详解 2022-12-03
 - Java实现顺序表的操作详解 2023-05-19
 - 深入了解Spring的事务传播机制 2023-06-02
 - ExecutorService Callable Future多线程返回结果原理解析 2023-06-01
 - Java中的日期时间处理及格式化处理 2023-04-18
 
						
						
						
						
						
				
				
				
				