欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Springboot项目打成jar包,如何设置存储路径?并且上传的静态文件如何访问?

程序员文章站 2022-04-29 19:01:42
...

Springboot项目打成jar包,如何设置存储路径?并且上传的静态文件如何访问?

第一步 设置资源资源存储路径

找到需要保存指定文件路径添加以下代码

//保存上传的资源文件路径,路径在部署jar包同级目录。
String path = System.getProperty("user.dir")+"/static/images/";
File dir = new File(path);
	if (!dir.exists()) {
	  dir.mkdirs();
	}
	// 文件上传后的路径
	File dest = new File(path + file1);
	file.transferTo(dest);

结果如下:
Springboot项目打成jar包,如何设置存储路径?并且上传的静态文件如何访问?

注:以上只是把资源存储到jar包同级目录下,经过以下操作步骤才能进行访问

第二步 设置http访问上传的静态资源文件

创建一个静态资源文件权限访问类,实现WebMvcConfigurer接口,并且在类中实现addResourceHandlers方法,代码如下:

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

/**
 * 配置静态资源访问权限
 * @Author: lantf
 * @Date: 2021/6/18 14:32
 * @Version 1.0
 */
@Configuration
public class MySecurityConfig implements WebMvcConfigurer {

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/","file:static/");
    }
}

注 /static/** 代表有权限访问static文件夹下的资源,其中file:static/ 至关重要,只有配置了这句代码,才能使用http://ip:port/static/xxx 访问静态资源。 如何:http://127.0.0.1:8083/lzsystem/static/images/2021062011045713161.jpg

相关标签: java spring boot