springboot怎样获取相对路径文件夹下静态资源

  介绍

小编给大家分享一下springboot怎样获取相对路径文件夹下静态资源,希望大家阅读完这篇文章之后都有所收获、下面让我们一起去探讨吧!

今日遇到一个问题:springboot需要获取到一个自定义名称文件夹下的静态资源(图片等),并且文件夹的路径不在类路径下面,而是一个相对路径。

一开始使用修改配置文件的方式:

#,配置静态资源访问前缀   spring.mvc.static-path-pattern=*/* *   #,配置静态资源路径,默认配置失效   spring.resources.static-locations=. ./上传

,发现并不行,无法解析出相对路径。

后面通过自定义静态资源映射配置类实现了:

@ configuration   @EnableConfigurationProperties ({}, FileHanderProperties.class )   public  class  FileHandleConfig  extends  WebMvcConfigurerAdapter  {   ,   @ autowired才能   private 才能;FileHanderProperties  fileHanderProperties;   ,   @Override才能   public 才能;void  addResourceHandlers (ResourceHandlerRegistry 注册),{   ,,,registry.addResourceHandler (fileHanderProperties.getResource ())   ,,,,,,,.addResourceLocations(“文件:“,+,fileHanderProperties.getFileDir () +“//?;   ,,,super.addResourceHandlers(注册表);   ,,}   ,   }

然后再在配置文件中配置 springboot怎样获取相对路径文件夹下静态资源

通过自定义的配置文件读取类fileHanderProperties获取配置的参数,这样就可以获取到相对路径中的静态资源了。在浏览器中直接输入url,就可以得到图片。

<强>关键点:

1。addResourceLocations里面要加前缀“文件:“,这样才能获取到自定义目录下的文件。用“类路径:“只能获取到类路径下的资源;

2。静态资源访问前缀(即addResourceHandler内的参数)要写成*/* *,这样才可以获取到上传文件夹下所有的文件(包括上传文件夹里面的文件夹如imgupload里的资源,只要在网址里多加/imgupload),而且在url输入的时候可以不用写上传(如果你想写,就把前缀改为上传/* *,这样就必须在url里写上上传才能获取到资源),

看完了这篇文章,相信你对“springboot怎样获取相对路径文件夹下静态资源”有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!

springboot怎样获取相对路径文件夹下静态资源