SpringBoot——静态资源配置

SpringMVC回顾

xml配置

在SpringMVC中,静态资源会被拦截,需要添加额外配置放行。

<mvc:resources mapping="/js/**" location="/js/"/>
<mvc:resources mapping="/css/**" location="/css/"/>
<mvc:resources mapping="/html/**" location="/html/"/>

/** ( Ant风格的路径匹配符 )表示可以匹配任意层级的路径,因此上面的代码也可以像下面这样简写:

<mvc:resources mapping="/**" location="/"/>

java配置

SpringMVC 的配置除了在XML中配置,也可以在 Java 代码中配置 , 在 Java 代码中配置 , 只需要自定义一个继承自 WebMvcConfigurationSupport 的类:

@Configuration
@ComponentScan(basePackages = "com.lh.ssm")
public class SpringMVCConfig extends WebMvcConfigurationSupport {
    @Override
    protected void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/**").addResourceLocations("/");
    }
}

在Spring Boot 中的配置

默认配置

在 Spring Boot 中,默认情况下,一共有 5 个位置可以放静态资源, 优先级 自上而下

  1. classpath:/META-INF/resources/
  2. classpath:/resources/
  3. classpath:/static/ (常用)
  4. classpath:/public/
  5. / 在 Spring Boot 项目中,默认是没有 webapp 这个目录的 ,我们可以自己添加 (例如在需要使用JSP的时候) / 其实就是表示 webapp 目录中的静态资源也不被拦截。

自定义配置

如果不想将资源放在系统默认位置上 ,可以通过 application.properties 来定义,也可以在 Java 代码中来定义 。

application.properties

spring.resources.static-locations=classpath:/   #资源位置
spring.mvc.static-path-pattern=/** #请求 URL 规则 

Java 代码定义

方式和 Java 配置的 SSM 类似

@Configuration
public class WebMVCConfig implements WebMvcConfigurer {
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/**").addResourceLocations("classpath:/aaa/");
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值