关于springboot上传图片需要重启服务器才能访问刚上传的图片
场景:
1、需要访问刚上传的图片
2、更换图片(同名称图片)-达到图片回显的效果
文章目录
- 关于springboot重启才能看见刚上传的图片
前言
简单记录一下!!!
提示:以下是本篇文章正文内容,下面案例可供参考
一、Spring Boot对静态资源映射提供了默认配置
Spring Boot默认将 /** 所有访问映射到⼀下⽬录
classpath:/static
classpath:/public
classpath:/resources
classpath:/META-INF/resources
我们一般都把图片放在这些文件夹中,才能访问,但是需要重启一次才能访问你上一次上传的
图片。
重启服务器查看图片
为什么要重启才能访问上传的图片呢,因为你的代码在运行中,你新上传的图片,并没有进入编译,所以找不到,不能访问,怎么解决呢。
自定义静态资源访问,写一个配置类
在项目下面创建一个目录 和 src同级 注意文件夹名称和自定义静态资源类里的 文件名 保持一致!!!
访问路径为: localhost:8080/upload/图片名...
registry.addResourceHandler(“/upload/**”).addResourceLocations(“file:upload/”)
前面的upload意思是,访问的时候路径上要加上upload,不然也访问不到
后面的upload意思是,你图片上传的路径,我的图片上传就在upload文件中。
上传成功! 实时展示刚才上传的图片 达到图片回显的效果!!!
二、代码
代码如下(示例):
@Configuration
public class MyWebConfig implements WebMvcConfigurer {
/***
* 自定义资源映射
* @param registry
*/
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/upload/**").addResourceLocations("file:upload/");
}
}
总结
就到这里啦!!!