Spring Boot集成Thymeleaf模板引擎的完整步骤

网友投稿 350 2023-01-13


Spring Boot集成Thymeleaf模板引擎的完整步骤

简单介绍

目前在javaEE领域有几中比较常用的模板引擎,分别是jsp、Velocity、Freemarker、Thymeleaf,对Freemark语法不是特别熟悉,不过对于前端页面渲染效率来说,jsp其实还是最快的,Velocity次之。Thymeleaf虽然渲染效率不是很快,但是语法方面是比较轻巧的,Thymeleaf语法比Velocity轻巧,但是渲染效率不如Velocity

thymeleaf 支持html5标准;是一种模板引擎框架(TemplateEngine Framework);thymeleaf 页面无须部署到servlet开发到服务器上,直接通过浏览器就能打开。它可以完全替代 JSP 。

特点:

1.Thymeleaf 在有网络和无网络的环境下皆可运行,即它可以让美工在浏览器查看页面的静态效果,也可以让程序员在服务器查看带数据的动态页面效果。这是由于它支持 html 原型,然后在 html 标签里增加额外的属性来达到模板+数据的展示方式。浏览器解释 html 时会忽略未定义的标签属性,所以 thymeleaf 的模板可以静态地运行;当有数据返回到页面时,Thymeleaf 标签会动态地替换掉静态内容,使页面动态显示。

2.它提供标准和spring标准两种方言,可以直接套用模板实现JSTL、 OGNL表达式效果。

3.Thymeleaf 提供spring标准方言和一个与 SpringMVC 完美集成的可选模块,可以快速的实现表单绑定、属性编辑器、国际化等功能。

maven配置

因为引入了SpringBoot的parent工程,所以不需要写版本号

org.springframework.boot

spring-boot-starter-thymeleaf

application.yml配置

#添加Thymeleaf配置

thymeleaf:

cache: false

prefix: classpath:/templates/

suffix: .html

mode: HTML5

encoding: UTF-8

content-type: text/html

application.yml:

server:

port: 8081

#logging:

# config: classpath:logback_spring.xml.bat

# level:

# com.muses.taoshop: debug

# path: /data/logs

spring:

datasource:

# 主数据源

http:// shop:

url: jdbc:mysql://127.0.0.1:3306/taoshop?autoReconnect=true&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false

username: root

password: root

driver-class-name: com.mysql.jdbc.Driver

type: com.alibaba.druid.pool.DruidDataSource

# 连接池设置

druid:

initial-size: 5

min-idle: 5

max-active: 20

# 配置获取连接等待超时的时间

max-wait: 60000

# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒

time-between-eviction-runs-millis: 60000

# 配置一个连接在池中最小生存的时间,单位是毫秒

min-evictable-idle-time-millis: 300000

# Oracle请使用select 1 from dual

validation-query: SELECT 'x'

test-while-idle: true

test-on-borrow: false

test-on-return: false

# 打开PSCache,并且指定每个连接上PSCache的大小

pool-prepared-statements: true

max-pool-prepared-statement-per-connection-size: 20

# 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙

filters: stat,wall,slf4j

# 通过connectProperties属性来打开mergeSql功能;慢SQL记录

connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000

# 合并多个DruidDataSource的监控数据

use-global-data-source-stat: true

# jpa:

# database: mysql

# hibernate:

# show_sql: true

# format_sql: true

# ddl-auto: none

# naming:

# physical-strategy: org.hibernate.boot.entity.naming.PhysicalNamingStrategyStandardImpl

# mvc:

# view:

# prefix: /WEB-INF/jsp/

# suffix: .jsp

#添加Thymeleaf配置

thymeleaf:

cache: false

prefix: classpath:/templates/

suffix: .html

mode: HTML5

encoding: UTF-8

content-type: text/html

#Jedis配置

# jedis :

# pool :

# host : 127.0.0.1

# port : 6379

# password : redispassword

# timeout : 0

# config :

# maxTotal : 100

# maxIdle : 10

# maxWaitMillis : 100000

添加html文件

在resources资源文件夹下面新建一个templates文件夹,所有的html文件都丢在这里,静态资源文件也丢在resources资源文件夹下面

新建一个html文件,然后注意加上

注意Thymeleaf语法要求比较严格 ,不如这样写是不可以的,必须加上斜杠的,

Thymeleaf简单例子

遍历后台数据

引入文件

Thymeleaf引入另外一个html文件可以使用th:replace或者th:include,

Img便签src

链接便签

静态资源使用

给出一个html页面例子:

xmlns:th="http://thymeleaf.org">

电信充值卡

银行卡

代码取自个人的开源项目:https://github.com/u014427391/taoshop,有需要可以参考

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对我们的支持。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java多线程实战之交叉打印的两种方法
下一篇:Spring Cloud原理详解
相关文章

 发表评论

暂时没有评论,来抢沙发吧~