thymeleaf
-
springboot默认打包为jar包,jar包是一个压缩包,但是jsp不支持在压缩包内编译,因此springboot默认不支持jsp
-
Spring官方支持的服务的渲染模板有Thymeleaf和Freemarker等,Thymeleaf是用来开发Web和独立环境项目的服务器端的Java模版引擎
-
缺点:Thymeleaf效率不高
表达式
引入Thymeleaf的starter
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
在html文件中引入命名空间
<html lang="en" xmlns:th="http://www.thymeleaf.org">
例子
success.html
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1 th:text="${msg}">啊哈哈</h1>
<h2><a href="www.baidu.com" th:href="${link}">去百度</a></h2>
</body>
</html>
ViewController:
@Controller
public class ViewController {
@RequestMapping("/haha")
public String haha(Model model){
//model中的数据会被自动放到请求域中,相当于request.setAttribute("a",aa)
model.addAttribute("msg","你好");
model.addAttribute("link","https://www.bilibili.com");
return "success";
}
}
全局配置文件中配置Thymeleaf模板的一些参数
spring.thymeleaf.cache = true #启用模板缓存
spring.thymeleaf.encoding = UTF-8 #模板编码
spring.thymeleaf.mode = HTML5 #应用于模板的模板模式
spring.thymeleaf.prefix = classpath:/templates/ #指定模板页面存放路径
spring.thymeleaf.suffix = .html #指定模板页面名称的后缀
-
pring.thymeleaf.cache表示是否开启Thymeleaf模板缓存,默认为true,在开发过程中通常会关闭缓存,保证项目调试过程中数据能够及时响应;
-
spring.thymeleaf.prefix指定了Thymeleaf模板页面的存放路径,默认为classpath:/templates/;
-
spring.thymeleaf.suffix指定了Thymeleaf模板页面的名称后缀,默认为.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现