记一次springboot上传文件要重启或bulid才能显示的问题

本文介绍了解决SpringBoot项目中上传图片后无法立即预览的问题。通过配置虚拟路径映射,使得图片上传后能直接在前端展示。

记一次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);
	}
}

然后重启项目,上传文件后就可以看到图片了

image-20210503155847453

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值