springboot 專案打包部署後設置上傳檔案訪問的絕對路徑
阿新 • • 發佈:2018-11-11
1、設定絕對路徑
application.properties的配置
#靜態資源對外暴露的訪問路徑
file.staticAccessPath=/upload/**
#檔案上傳目錄(注意Linux和Windows上的目錄結構不同)
#file.uploadFolder=/home/upload/
file.uploadFolder=d://upload/
配置上傳檔案的目錄,也可以在這裡設定上傳檔案的大小
@Configuration public class UploadFileConfig { @Value("${file.uploadFolder}") private String uploadFolder; @Bean MultipartConfigElement multipartConfigElement() { MultipartConfigFactory factory = new MultipartConfigFactory(); factory.setLocation(uploadFolder); //檔案最大 factory.setMaxFileSize("5MB");// 設定總上傳資料總大小 factory.setMaxRequestSize("10MB"); return factory.createMultipartConfig(); } }
2、設定虛擬路徑,訪問絕對路徑下資源
@Configuration public class UploadFilePathConfig extends WebMvcConfigurerAdapter { @Value("${file.staticAccessPath}") private String staticAccessPath; @Value("${file.uploadFolder}") private String uploadFolder; @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler(staticAccessPath).addResourceLocations("file:" + uploadFolder); } }
這時就可以通過訪問 http://localhost:8080/upload/xxx.jpg
訪問d://upload/
下的資源。