spring boot关于静态资源的一些问题

本文详细介绍了在SpringBoot项目中如何正确配置Thymeleaf模板引擎,并解决静态资源如CSS、JS、图片等的加载问题。通过设置application.properties中的thymeleaf和resources属性,确保静态资源能被正确访问。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

每次新建一个项目都会为访问不到静态资源烦恼,以下记录访问静态资源的一些问题

使用spring boot项目是一般会使用thymeleaf模板来获取数据,所以必须要导入thymeleaf的坐标

<!-- 导入thymeleaf坐标 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

 

spring boot默认访问的是static下面的视图信息,所以可以在application.properties的配置文件配置thymeleaf的视图映射:

#thymeleaf模板配置
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html
spring.thymeleaf.mode=HTML5
spring.thymeleaf.encoding=UTF-8
spring.thymeleaf.content-type=text/html
spring.thymeleaf.cache=false
spring.resources.chain.strategy.content.enabled=true
spring.resources.chain.strategy.content.paths=/**

注意classpath:后面的值,无需加**

此时配置的是thymeleaf映射的视图配置:

@GetMapping("login")
public ModelAndView login(){
    ModelAndView mv = new ModelAndView();
    mv.setViewName("index");
    return mv;
}

这样的方式可以正确映射templates文件下的视图,而不可以使用http://localhost/xx/index.html这样的方式直接访问。

问题:在我们的index.html文件中会引入很多静态资源文件,此时是加载不到的,造成苦恼

解决方案:把img\js\css放入你的static目录下,我是这么处理的。

 

另外一种访问静态资源的方式:

spring.mvc.static-path-pattern=/static/**

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值