springboot2.X自定义静态资源映射

一.问题描述

前端请求/下载图片和文件

二.解决思路

1、后端提供接口,将图片/文件以流形式返回给前端,太麻烦 ×
2、后端做映射,前端直接通过ip:port的方式访问,简单明了 √

三.解决方案

1、实现WebMvcConfigurer自定义配置映射路径(推荐,兼容性好):

@Configuration
public class ResourceConfiguration implements WebMvcConfigurer {

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        //addResourceHandler -> 对外暴露的访问路径,如例子为files文件下的所有资源(包括子文件夹)
        registry.addResourceHandler("/files/**")
                //addResourceLocations -> 映射文件放置的目录
                //注意:jar包外部文件夹用file,jar包内部文件用classpath,例子用的是绝对路径
                //File.separator会判断当前系统,然后处理为相应反斜杠(Windows和linux的反斜杠不一样)
                .addResourceLocations("file:" + System.getProperty("user.dir") + File.separator + "files" + File.separator);
    }
}

访问files文件夹下的子文件夹test的图片:
访问files文件夹下test文件夹里的图片
files文件夹下的子文件夹organize的图片:
访问files文件夹下organize文件夹里的图片
文件结构:
文件结构
2、集成WebMvcConfigurationSupport
https://www.cnblogs.com/jrjrzivvv/p/12741203.html
3、将文件放在默认映射路径中
https://www.cnblogs.com/luchangjiang/p/10805951.html
4、其他解决方案:通过配置yml
https://www.cnblogs.com/zhncnblogs/p/13468158.html
5、顺便提一下springboot1.X用的是WebMvcConfigurerAdapter类

参考资料:
https://blog.csdn.net/shijiujiu33/article/details/90183343

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值