本篇文章小编给大家分享一下SpringBoot资源文件的存放位置设置方式代码实例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
SpringBoot默认的存放静态资源文件的位置是:
注:SpringBoot中的src/main/resources/资源文件夹对应classpath:。
默认存放静态资源文件的位置
在SpringBoot项目中的文件夹位置为:
即:搜索文件夹的优先顺序和数组中的顺序一致。
当我们访问IP地址:端口号/时,就相当于访问到了这四个文件夹。
如:访问:localhost:8080/123.jpg时,就会先去看src/main/resources资源文件夹下的META-INF下的resoures文件夹中是否有123.jpg,没 有的话再看src/main/resources资源文件夹下的resoures文件夹中是否有123.jpg,没有的话再看src/main/resources资源文件夹下的static文件夹中是否有123.jpg,没有的话再看src/main/resources资源文件夹下的public文件夹中是否有123.jpg。
手动配置其搜索资源文件的文件夹位置
把文件放在SpringBoot项目下的classpath中
方式一:通过配置类
import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; /** * 主动设置URL匹配路径 * * @author JustryDeng * @date 2018年8月4日 上午1:36:38 */ @Configuration public class MyURLPatternConfiguration extends WebMvcConfigurationSupport { @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("/fileData/**").addResourceLocations("classpath:/myFile/"); super.addResourceHandlers(registry); } }
此时:访问IP地址:端口号/fileData/时,就相当于到了src/main/resources资源文件夹下的myFile文件夹中了,图示说明:
注:此时默认的四个文件夹都失效了,如果想让默认的四个文件夹依然有效,那么可以在配置类中多次通过.addResourceHandler添加指定那四个文件夹。
方式二:通过配置文件
# 设置当URI为/fileData/**时,才进过静态资源 # 注:如果设置为/**,那么表示任何访问都会经过静态资源路径 spring.mvc.static-path-pattern=/fileData/** # 自定义路径 # 注:自定义路径时,默认的四个文件夹下中的“META-INF下的resoures文件夹”仍然有效,其他三个文件夹失效 # (此时:访问ip:端口号/fileData/时,相当于访问到了 “自定义的文件夹”和 “META-INF下的resoures文件夹”); # 注:搜索文件时,自定义的文件夹的优先级要高于默认的四个文件夹 spring.resources.static-locations=classpath:/myFile/ # 提示:如果我们显式地把自定义文件夹 和 默认的四个文件夹都写出来,那么都会有效(此时,优先级 从左至右 依次降低) #spring.resources.static-locations = classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/,classpath:/myFile/
把文件放在项目jar包之外的服务器磁盘中的某个文件夹中
方式一:通过配置类
import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; /** * 主动设置URL匹配路径 * * @author JustryDeng * @date 2018年8月4日 上午1:36:38 */ @Configuration public class MyURLPatternConfiguration extends WebMvcConfigurationSupport { @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { // 指定到D盘下的myFile文件夹 // 注:如果是Linux的话,直接指定文件夹路径即可,不需要指定哪个盘(Linux就一个可用盘) registry.addResourceHandler("/fileData/**").addResourceLocations("file:D:/myFile/"); super.addResourceHandlers(registry); } }
此时:我们访问IP地址:端口号/fileData/时,就相当于到了服务器D盘下的myFile文件夹中了。
注:此时默认的四个文件夹都失效了,如果想让默认的四个文件夹依然有效,那么可以在配置类中通过 .addResourceHandler多次添加四个文件夹。
方式二:通过配置文件
# 设置当URI为/fileData/**时,才进过静态资源 # 注:如果设置为/**,那么表示任何访问都会经过静态资源路径 spring.mvc.static-path-pattern=/fileData/** # 自定义路径 # 注:自定义路径时,默认的四个文件夹下中的“META-INF下的resoures文件夹”仍然有效,其他三个文件夹失效 # (此时:访问ip:端口号/fileData/时,相当于访问到了 “自定义的文件夹”和 “META-INF下的resoures文件夹”); # 注:搜索文件时,自定义的文件夹的优先级要高于默认的四个文件夹 spring.resources.static-locations=file:D:/myFile/ # 提示:如果我们显式地把自定义文件夹 和 默认的四个文件夹都写出来,那么都会有效(此时,优先级 从左至右 依次降低) #spring.resources.static-locations = classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/,file:D:/myFile/
忍者必须死34399账号登录版 最新版v1.0.138v2.0.72
下载勇者秘境oppo版 安卓版v1.0.5
下载忍者必须死3一加版 最新版v1.0.138v2.0.72
下载绝世仙王官方正版 最新安卓版v1.0.49
下载Goat Simulator 3手机版 安卓版v1.0.8.2
Goat Simulator 3手机版是一个非常有趣的模拟游
Goat Simulator 3国际服 安卓版v1.0.8.2
Goat Simulator 3国际版是一个非常有趣的山羊模
烟花燃放模拟器中文版 2025最新版v1.0
烟花燃放模拟器是款仿真的烟花绽放模拟器类型单机小游戏,全方位
我的世界动漫世界 手机版v友y整合
我的世界动漫世界模组整合包是一款加入了动漫元素的素材整合包,
我的世界贝爷生存整合包 最新版v隔壁老王
我的世界MITE贝爷生存整合包是一款根据原版MC制作的魔改整