spring boot静态资源管理

说明

在默认情况下,Spring Boot 将通过类加载路径下的/static/(或/public/、/META-INF/resources/、/resources/)目录或应用的根路径来提供静态资源,因此,对于大部分应用而言,开发者只要将JS脚本、CSS样式单、图片等静态资源统一放在类加载路径下的/static/或/public/、/META-INF/resources/、/resources/即可。

关注点

  1. 自动配置类WebMvcProperties,使用application.yml可以配置静态资源访问路径
    spring.mvc.static-path-pattern默认值为/,可以修改为自己指定的访问路径比如:/cs/,则访问静态资源路径必须带/cs/

  2. 自动配置类WebProperties,使用application.yml可以配置静态资源位置路径
    spring.web.resources.static-locations默认值为
    { “classpath:/META-INF/resources/”,“classpath:/resources/”, “classpath:/static/”, “classpath:/public/” }(路径优先级从高到底),则资源位置路径可以自己定义,例如:classpath:/csResources/,则src/main/resources/目录下建csResources文件夹存储静态资源

  3. 可以实现WebMvcConfigurer接口并重写该类的addResourceHandlers方法来实现,例如:

@Configuration
//public class WebMvcConfiger extends WebMvcConfigurerAdapter {
public class WebMvcConfiger implements WebMvcConfigurer {
   @Override
   public void addResourceHandlers(ResourceHandlerRegistry registry) {
       registry.addResourceHandler("/dist/**").addResourceLocations("classpath:/static/dist/");
       registry.addResourceHandler("/theme/**").addResourceLocations("classpath:/static/theme/");
       
   }
}
  1. Spring Boot 也支持加载WebJar包中的静态资源,WebJar包中的静态资源都会被映射到/webjar/**路径下。比如在应用的某个JAR包中包含js/abc.js,那么它实际的映射地址就是/webjars/js/abc.js(WebJar是一种将前端资源(如JS库、CSS样式单、图片等)打包到JAR中,然后使用基于JVM的包管理器来管理前端依赖的方案)。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值