SpringBoot 使用 Thymeleaf 模板引擎
快速构建Thymeleaf 模板引擎
简单5步起,就实现模板引擎开始:
- 1、引入依赖包。
- 2、设置配置文件。
- 3、编辑后台代码。
- 4、编辑前端代码。
- 5、启动项目访问。
构建步骤
1、SpringBoot 的 pom.xml 引入 Thymeleaf 依赖包
SpringBoot默认提供了Thymeleaf的Starter,只需简单引入依赖即可。
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency>
版本号根据SpringBoot的版本号,引用的版本不一样。本教程使用SpringBoot 2.1.5.RELEASE 版本,默认使用3.0.11.RELEASE版本。
2、SpringBoot 设置配置文件
本教程使用了yml来配置SpringBoot的配置文件,使用三个配置文件。开发环境和生产环境都需要添加。配置文件可以参考
spring: #模板配置 thymeleaf: prefix: classpath:/templates/ # Prefix that gets prepended to view names when building a URL.前缀,用于在构建URL时查看名称。 cache: false # Whether to enable template caching.是否启用模板缓存。 check-template: true # Whether to check that the template exists before rendering it.渲染前是否检查模板是否存在。 check-template-location: true # Whether to check that the templates location exists.是否检查模板位置。 enabled: true # Whether to enable Thymeleaf view resolution for Web frameworks.是否为Web框架启用Thymeleaf视图解析。 enable-spring-el-compiler: false # Enable the SpringEL compiler in SpringEL expressions.在SpringEL表达式中启用SpringEL编译器。 encoding: UTF-8 # Template files encoding.模板文件编码。 excluded-view-names: # Comma-separated list of view names (patterns allowed) that should be excluded from resolution.逗号分隔的视图名称列表(允许的模式),应从分辨率中排除。 mode: HTML # Template mode to be applied to templates. See also Thymeleaf's TemplateMode enum.应用于模板的模板模式。另请参见Thymeleaf的TemplateMode枚举。 reactive.chunked-mode-view-names: # Comma-separated list of view names (patterns allowed) that should be the only ones executed in CHUNKED mode when a max chunk size is set.以逗号分隔的视图名称列表(允许的模式),当设置最大块大小时,这些视图名称应该是在CHUNKED模式下唯一执行的视图名称。 reactive.full-mode-view-names: # Comma-separated list of view names (patterns allowed) that should be executed in FULL mode even if a max chunk size is set.以逗号分隔的视图名称列表(允许的模式),即使设置了最大块大小,也应以FULL模式执行。 reactive.max-chunk-size: 0 # Maximum size of data buffers used for writing to the response, in bytes.用于写入响应的数据缓冲区的最大大小,以字节为单位。 #reactive.media-types: # Media types supported by the view technology.视图技术支持的媒体类型。 servlet.content-type: text/html # Content-Type value written to HTTP responses.写入HTTP响应的Content-Type值。 suffix: .html # Suffix that gets appended to view names when building a URL.在构建URL时添加到视图名称的后缀。 # template-resolver-order: # Order of the template resolver in the chain.模板解析器在链中的顺序。 # view-names: # Comma-separated list of view names (patterns allowed) that can be resolved.可以解析的视图名称列表(以逗号分隔)。
3、SpringBoot 编辑后台代码
实现一个文章来当例子:
package com.mainboot.mainbootAdmin.controller; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import com.mainboot.mainbootAdmin.model.Article; import com.mainboot.mainbootAdmin.service.ArticleService; @Controller @RequestMapping("article") public class ArticleViewController { @Autowired private ArticleService articleService; @RequestMapping("index") public String index(Integer id,Model mv){ Article article = new Article(); if(id!=null){ article = articleService.findId(id); } mv.addAttribute("article", article); return "index"; } }
4、SpringBoot 编辑前端代码
<!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"/> <title th:text="${article.title}"></title> </head> <body> <h1 th:text="${article.title}"></h1> <p th:utext="${article.info}"> </p> </body> </html>
5、SpringBoot 启动项目访问
运行项目:访问:url/article/index?id=3052
希望我的分享可以帮助到你,如果你在内容技术上遇到难题,可以+关注■@主引教程 ,反馈给我们。我们会及时回复,如果有那些内容有误可以直接提出来,我们会及时纠正,谢谢来访。
本文暂时没有评论,来添加一个吧(●'◡'●)