记一次springboot上传文件要重启或bulid才能显示的问题
问题:Springboot文件上传功能上传图片时,前端不能很快的显示图片,每次都要上传图片后要重新build一下才能看得见上传的图片
原因:这是对服务器的保护措施导致的,服务器不能对外部暴露真实的资源路径,需要配置虚拟路径映射访问。
解决方法:
在application.yml文件加入了静态资源文件夹:
spring:
#获取静态文件
resources:
static-locations:
- classpath:/static/
- classpath:/templates/
- classpath:/public/
然后增加一个配置类
package com.cheng.Config;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
/**
* @Author ASUS
* @Create 2021-05-03 15:44
* @Version 1.0
* @Description 新增加一个类用来添加虚拟路径映射
*/
@Configuration
public class MyPicConfig implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
String path = System.getProperty("user.dir") + "\\src\\main\\resources\\public\\upload\\";
// /upload/**是对应resource下工程目录
registry.addResourceHandler("/upload/**").addResourceLocations("file:" + path);
}
}
然后重启项目,上传文件后就可以看到图片了