thymeleaf简介

本文介绍Thymeleaf模板引擎的特点与优势,并详细讲解如何在Spring Boot项目中配置和使用Thymeleaf,包括解决标签未闭合的问题、视图解析配置以及如何正确引用静态资源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


一:什么是模版引擎

123.png


模版引擎就是将数据和动态模版页面转成html静态页面。

springboot支持的模版引擎有:FreeMarkerThymeleafjspveocity,其中对Freemarker和Thymeleaf支持最友好,其他两个要么性能不好,要么整合起来麻烦。


二:Thymeleaf模版引擎简介

Thymeleaf模版引擎是新一代模版引擎,springboot2.0以下版本使用的是thymeleaf2,springboot2.0版本支持thymeleaf3,thymeleaf3比thymeleaf2在性能方面有很大的改进。

优点:

1:相比jsp页面Thymeleaf页面更简洁,因为没有下面这一堆的东西

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt"  prefix="fmt"%>

下面就是Thymeleaf模版页面

<!DOCTYPE HTML>
     < html >
         < head >
         < title  th:text = "${error}" ></ title >
         </ head >
     < body >
     
     </ body >
</ html >


2:标签内容以标签属性渲染,能更好地前后端分离

jsp这么渲染标签内容,这种写法jsp页面脱离工程,页面显示的是${item.name}没法看。

< a  target = "_blank"  href = "#" >${item.name }</ a >


Thymeleaf这么渲染标签内容,这种写法页面脱离工程,还可以很好的显示。

< a  target = "_blank"  href = "#"  th:text = "${item.name }" >张三</ a >

综合考虑呢,我们还是选择Thymeleaf模版引擎,使用该模版引擎需要pom依赖

< dependency >
             < groupId >org.springframework.boot</ groupId >
             < artifactId >spring-boot-starter-thymeleaf</ artifactId >
</ dependency >


三:解决标签没闭合报错的问题

1:pom依赖

< dependency >
               < groupId >net.sourceforge.nekohtml</ groupId >
               < artifactId >nekohtml</ artifactId >
               < version >1.9.22</ version >
</ dependency >

2:在application.properties中加如下配置

spring.thymeleaf.mode = LEGACYHTML5

解释:spring.thymeleaf.mode的默认值是HTML5,其实是一个很严格的检查,改为LEGACYHTML5可以得到一个可能更友好亲切的格式要求。


四:Thymeleaf视图解析

默认的视图解析:


12.png


修改默认视图解析:

spring.thymeleaf.prefix=classpath:/templates/html/ 不要漏写
spring.thymeleaf.suffix=.html
#默认情况下,页面会被浏览器缓存,开发阶段设置为false
spring.thymeleaf.cache=false


五:在页面中访问静态资源

静态资源存放目录

方法.png


页面中这么引入静态文件

< img  src=”/images/….”>
< script  src=”/js/….”>
< link  href=”/css/….”>

注意:无需带上static目录哦。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值