方式一

  •  
  •  
String path = ClassUtils.getDefaultClassLoader().getResource("").getPath();String filePath = path + "static/支付平台单位.xlsx";

 

所拿到的filePath 就是对应的静态目录
springboot配置静态文件及获取静态资源路径_java

 

方式二

直接获取,无需配置静态目录;

发现有个好处、相比上一种方式,这种方法不会在linux或者jar上失效!

  •  
  •  
  •  
ClassPathResource classPathResource = new ClassPathResource("static/支付平台单位.xlsx");InputStream inputStream = classPathResource.getInputStream();
 
 

springboot配置静态文件及获取静态资源路径_java_02

ps:建议用方式二写法,亲测优于方式一

拓展:

如果你想 通过 地址+文件名 在浏览器上直接访问 静态文件

比如:localhost:9090/static/支付平台单位.xlsx

localhost:9090/static/index.html 等等

则你需要在配置文件中设置可读取的静态目录,切记开放目录的路径越具体越好,防止静态资源泄密

第一、先设置springboot项目 静态资源访问地址:

配置文件中设置可读取静态目录(application.yaml)

  •  
  •  
  •  
  •  
spring:  mvc:    static-path-pattern: /static/**

springboot配置静态文件及获取静态资源路径_java_03