SpringBoot静态资源映射

静态资源映射的相关代码如下:
在这里插入图片描述

方法1:直接在配置文件application.properties中自己指定

if (!this.resourceProperties.isAddMappings()) {
    logger.debug("Default resource handling disabled");
}

如果是自己指定的,那么自动配置文件的配置就失去了作用,真正有效果的是自己配置的

方法2:通过webjars

this.addResourceHandler(registry, "/webjars/**", "classpath:/META-INF/resources/webjars/");
  1. 需要通过pom文件引入依赖
    在这里插入图片描述
  2. 下载完之后,就会在对应的jar包里出现下面的结构(/META-INF/resources/webjars/)。访问localhost:8080/webjars/……就能找到/META-INF/resources/webjars/里面的静态资源。所以可以将静态资源放到/META-INF/resources/webjars/中,然后通过localhost:8080/webjars/……进行访问
    在这里插入图片描述

方法3:通过resources文件夹下的public,resourses,static文件夹

this.addResourceHandler(registry, this.mvcProperties.getStaticPathPattern(), (registration) -> {
    registration.addResourceLocations(this.resourceProperties.getStaticLocations());
    if (this.servletContext != null) {
        ServletContextResource resource = new ServletContextResource(this.servletContext, "/");
        registration.addResourceLocations(new Resource[]{resource});
    }
});

访问localhost:8080/……时,会映射到resources/public,resources/resoursesresources/static中。当这三个文件夹下有三个同名文件,并访问这个文件时,优先级如下:resourses > static > public

【注意】resources/templates下的文件不能直接映射,需要通过controller来访问

那么怎么通过controller访问templates里面的html文件呢?

  1. pom中导入thymeleaf依赖
  2. 将html文件放在resources下的templates文件夹下
  3. return的test即为文件名
    在这里插入图片描述
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值