关于Springboot设置虚拟路径的一些坑

前言:当我们使用文件上传技术将文件存放在数据库中,为了方便在不同的机器上都可以去使用这些图片而不去修改代码中的路径,常常会将存放在数据库中的路径存放成绝对路径,之后通过SpringBoot的虚拟路径访问到真实的路径。
ps:这里说一下为什么不直接存储绝对路径
1、绝对路径不适合移植,如果将tomcat从window上放到Linux上,绝对路径都得改。
2、目前大多数的主流浏览器如Chrome、Safari等浏览器禁止直接访问本地文件。
常见的配置虚拟路径的方法有
1、直接配置在properties中
2、编写配置类,继承WebMvcConfigurerAdapter重写其addResourceHandlers方法

@Override
	public void addResourceHandlers(ResourceHandlerRegistry registry) {
		registry.addResourceHandler("/upload/**")
				.addResourceLocations("file:/Users/zby/image/st/upload/");
		super.addResourceHandlers(registry);
	}

我这里使用的是Linux的路径是/,window根据自己路径复制即可

ps:如果你的项目设置了content-path,如果访问文件必须要在图片的src前面加上你的content-path,否则是访问不到的。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值