Java SpringBoot 图片上传无法马上显示,只能重启IDEA后才生效解决方案

当上传图片时不能马上显示,后台接收图片保存到本地,返回保存路径,发现页面的标签无法显示图片,F12显示无法加载图片,请求地址为ip:port/static/images/(我将图片保存到了static下),显示404无此资源。将项目重新启动之后,图片可以正常加载。
原因分析:当程序加载后自动会加载到内存中,对当前目录不做读取。
解决方案就是设置虚拟目录

复制代码
 1 package com.ls.config;
 2 
 3 import org.springframework.context.annotation.Configuration;
 4 import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
 5 import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
 6 
 7 /**
 8  * @author lishuai
 9  * @create 2022-04-13 21:16
10  */
11 @Configuration
12 public class MyPicConfig implements WebMvcConfigurer {
13     @Override
14     public void addResourceHandlers(ResourceHandlerRegistry registry){
15         registry.addResourceHandler("/images/**").
16                 addResourceLocations("file:" + System.getProperty("user.dir") + "/src/main/resources/static/images/");
17     }
18 }
复制代码

 

然后解决问题
addResourceHandler()里配置需要映射的文件夹,此处代表映射文件夹user下的所有资源。
addResourceLocations()配置文件夹在系统中的路径,使用绝对路径,格式为“file:你的路径” (注意这里)

为了防止路径有问题,我们还可以这样,这样就再也不怕路径出问题了。换到其它电脑上也没有问题

 


原文链接:https://blog.csdn.net/weixin_44690195/article/details/108855892

 

posted @   谜语+  阅读(1348)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示