当前位置:   article > 正文

spring boot对外部文件的访问

spring boot对外部文件的访问

很多朋友都会遇到这个问题,项目打包成jar格式,本地其他盘符里面的文件访问不到(项目达成war包的和资源是在服务器访问的请忽视),这里只需要在配置文件中添加配置,然后使用建立一个WebMvcConfigurerAdapter拦截就可以了

(1) 首先 application.properties配置文件中添加如下配置

  1. #通过浏览器访问文件的路径
  2. file.staticAccessPath=/api/file/**
  3. #本地资源路径
  4. file.uploadFolder=d:///uploadFile/
  5. #file.uploadFolder=/root/laboratory/uploadfile/

(2) 然后新建一个配置类

  1. package com.xxx.xxx;
  2. import org.springframework.beans.factory.annotation.Value;
  3. import org.springframework.context.annotation.Configuration;
  4. import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
  5. import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
  6. //import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
  7. @Configuration
  8. public class UploadFilePathConfig extends WebMvcConfigurationSupport{
  9. @Value("${file.staticAccessPath}")
  10. private String staticAccessPath;
  11. @Value("${file.uploadFolder}")
  12. private String uploadFolder;
  13. @Override
  14. public void addResourceHandlers(ResourceHandlerRegistry registry) {
  15. //外部文件
  16. registry.addResourceHandler(staticAccessPath).addResourceLocations("file:" + uploadFolder);
  17. //内部静态文件(使用WebMvcConfigurationSupport之后内部静态文件无法访问的话就添加以下这段代码)
  18. registry.addResourceHandler("/**")
  19. .addResourceLocations(ResourceUtils.CLASSPATH_URL_PREFIX+"/static/");
  20. }
  21. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/218444?site
推荐阅读
相关标签
  

闽ICP备14008679号