其他
Spring Boot系列之Thymeleaf模板入门
PS:绝对不要为自己想做而不去做的事情找理由。
引入Thymeleaf
Thymeleaf属性
Thymeleaf的使用
热部署
引入Thymeleaf
// 引入thymeleaf依赖
implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
}
buildscript {
repositories {
jcenter()
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:2.2.5.RELEASE")
}
}
Thymeleaf属性
spring.thymeleaf.cache=false
# 在渲染之前检查模板是否存在
#spring.thymeleaf.check-template=true
# 检查模板位置是否存在
#spring.thymeleaf.check-template-location=true
# 是否在SpringEL表达式中启用SpringEL编译器
#spring.thymeleaf.enable-spring-el-compiler=false
# 是否为Web框架启用Thymeleaf视图解析
#spring.thymeleaf.enabled=true
# 模板编码
#spring.thymeleaf.encoding=UTF-8
# 应该从解决方案中排除的视图名称的逗号分隔列表
#spring.thymeleaf.excluded-view-names
# 模板模式
#spring.thymeleaf.mode=HTML
# 构建URL时的前缀
#spring.thymeleaf.prefix=classpath:/templates/
# 构建URL时的后缀
#spring.thymeleaf.suffix=.html
# 逗号分隔的视图名称列表,当设置了最大块大小时,应该是CHUNKED模式中唯一执行的视图名称列表
#spring.thymeleaf.reactive.chunked-mode-view-names
# 如果设置了最大块的大小,应该是FULL模式下的逗号分隔的视图名称列表
#spring.thymeleaf.reactive.full-mode-view-names
# 用于写入响应的数据缓冲区的最大大小,如果设置了模板,则默认情况下将以CHUNKED模式执行
#spring.thymeleaf.reactive.max-chunk-size=0B
# 视图技术支持的媒体类型
#spring.thymeleaf.reactive.media-types
#Whether hidden form inputs acting as markers for checkboxes should be rendered before the checkbox element itself.
#spring.thymeleaf.render-hidden-markers-before-checkboxes=false
# HTTP响应的Content-Type类型
#spring.thymeleaf.servlet.content-type=text/html
# Thymeleaf应该尽可能的写入输出或者缓冲直到模板处理完成
#spring.thymeleaf.servlet.produce-partial-output-while-processing=true
# 模板解析器在链中的顺序,默认情况下,模板解析器位于链中的第一位,从1开始,并且仅在定义了其他TemplateResolver的情况下才能设置
#spring.thymeleaf.template-resolver-order
# 可以解析的视图名称的逗号分隔列表
#spring.thymeleaf.view-names
Thymeleaf的使用
<!--必须加入thymeleaf的命名空间-->
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>thymeleaf</title>
</head>
<body>
<p th:text="${name}">Hello World!</p>
</body>
</html>
${name}
会回去 name 的值在处理模板的时候会将 p
标签中的内容替换成 name 的值,然后,创建对应的 Controller 如下:public class ThymeleafController {
@RequestMapping("/index")
public String hello(Model model){
model.addAttribute("name","jzman");
return "hello";
}
}
热部署
// 热部署
implementation("org.springframework.boot:spring-boot-devtools:2.0.2.RELEASE")
}