在Spring Boot中配置Thymeleaf的模板路径

简介: 在Spring Boot中配置Thymeleaf的模板路径

众所周知,Thymeleaf的模板文件默认是在项目文件夹/src/main/resources/templates目录下的。不过出于特殊需要,要修改其路径怎么办呢?

1,Thymeleaf配置

在我们的项目配置文件application.properties中,添加如下配置:

# Thymeleaf配置
spring.thymeleaf.prefix=自定义的Thymeleaf的模板位置,jar内部以classpath:开头,外部路径使用file:开头
spring.thymeleaf.suffix=自动匹配后缀
spring.thymeleaf.cache=是否使用缓存

知道了以上配置的作用,我们就知道了,默认情况下Thymeleaf的spring.thymeleaf.prefix这条配置的值是classpath:/templates/(Spring Boot中classpath的根目录即对应项目文件夹/src/main/resources

这里放出我的配置:

# Thymeleaf配置
spring.thymeleaf.prefix=file:Resources/thymeleaf/
spring.thymeleaf.suffix=.html
spring.thymeleaf.cache=false

即把模板路径设置为当前目录下(指项目根目录或者编译后运行jar时的运行目录)的Resources/thymeleaf下。

需要注意的是模板路径值最后一定要加上斜杠/,否则就会出错。

2,配置Thymeleaf依赖后访问静态资源问题

我们知道Spring Boot静态资源平时都是放在项目文件夹/src/main/resources/static下的,例如在工程文件夹下src/main/resources/static下放入图片qiqi.png,并编写controller:

@GetMapping("/pic")
publicStringShowPic() {
return"/qiqi.png";
}

访问127.0.0.1:8080/pic即可访问到这个图片静态资源。

但是加入thymeleaf之后,你会发现这样就不行了,因为加入thymeleaf依赖之后,Spring Boot就会去Thymeleaf模板目录下寻找资源,并自动加上尾缀,而不是像以前一样去static文件夹下寻找资源

其实要想在使用thymeleaf之后还像原来一样访问静态资源,只需重定向即可:

@GetMapping("/pic")
publicStringShowPic() {
return"redirect:/qiqi.png";
}

可见return的静态资源地址前加上redirect:即可。

相关文章
|
4天前
|
Java 开发者 微服务
手写模拟Spring Boot自动配置功能
【11月更文挑战第19天】随着微服务架构的兴起,Spring Boot作为一种快速开发框架,因其简化了Spring应用的初始搭建和开发过程,受到了广大开发者的青睐。自动配置作为Spring Boot的核心特性之一,大大减少了手动配置的工作量,提高了开发效率。
19 0
|
28天前
|
Java API 数据库
Spring Boot框架因其简洁的配置、快速的启动特性及丰富的功能集而备受开发者青睐
本文通过在线图书管理系统案例,详细介绍如何使用Spring Boot构建RESTful API。从项目基础环境搭建、实体类与数据访问层定义,到业务逻辑实现和控制器编写,逐步展示了Spring Boot的简洁配置和强大功能。最后,通过Postman测试API,并介绍了如何添加安全性和异常处理,确保API的稳定性和安全性。
35 0
|
21天前
|
Java API Spring
在 Spring 配置文件中配置 Filter 的步骤
【10月更文挑战第21天】在 Spring 配置文件中配置 Filter 是实现请求过滤的重要手段。通过合理的配置,可以灵活地对请求进行处理,满足各种应用需求。还可以根据具体的项目要求和实际情况,进一步深入研究和优化 Filter 的配置,以提高应用的性能和安全性。
|
8天前
|
缓存 IDE Java
SpringBoot入门(7)- 配置热部署devtools工具
SpringBoot入门(7)- 配置热部署devtools工具
19 2
 SpringBoot入门(7)- 配置热部署devtools工具
|
7天前
|
Java 数据库连接
SpringBoot配置多数据源实战
第四届光学与机器视觉国际学术会议(ICOMV 2025) 2025 4th International Conference on Optics and Machine Vision
33 8
|
9天前
|
前端开发 Java 开发者
Spring生态学习路径与源码深度探讨
【11月更文挑战第13天】Spring框架作为Java企业级开发中的核心框架,其丰富的生态系统和强大的功能吸引了无数开发者的关注。学习Spring生态不仅仅是掌握Spring Framework本身,更需要深入理解其周边组件和工具,以及源码的底层实现逻辑。本文将从Spring生态的学习路径入手,详细探讨如何系统地学习Spring,并深入解析各个重点的底层实现逻辑。
35 9
|
4天前
|
Java 数据库连接 数据库
springboot启动配置文件-bootstrap.yml常用基本配置
以上是一些常用的基本配置项,在实际应用中可能会根据需求有所变化。通过合理配置 `bootstrap.yml`文件,可以确保应用程序在启动阶段加载正确的配置,并顺利启动运行。
11 2
|
13天前
|
Java Spring
[Spring]aop的配置与使用
本文介绍了AOP(面向切面编程)的基本概念和核心思想。AOP是Spring框架的核心功能之一,通过动态代理在不修改原代码的情况下注入新功能。文章详细解释了连接点、切入点、通知、切面等关键概念,并列举了前置通知、后置通知、最终通知、异常通知和环绕通知五种通知类型。
27 1
|
16天前
|
Java Spring 容器
SpringBoot读取配置文件的6种方式,包括:通过Environment、@PropertySource、@ConfigurationProperties、@Value读取配置信息
SpringBoot读取配置文件的6种方式,包括:通过Environment、@PropertySource、@ConfigurationProperties、@Value读取配置信息
43 3
|
27天前
|
druid Java Maven