Thymeleaf是什么?

  Thymeleaf是一个Java库。它是一个XML、XHTML、HTML5模板引擎,能够应用于转换模板文件,以显示您的应用程序产生的数据和文本。
  它尤其适合于基于XHTML、HTML5的web服务应用程序,同时它可以处理任何XML文件,作为web或独立的应用程序。
  Thymeleaf的主要目的是提供一个优雅和格式良好的方式创建模板。为了实现这一目标,它把预定义的逻辑放在XML的标记和属性上,而不是显式放在XML标记的内容上。
  依靠智能缓存去解析文件,致使其执行期间的I / O操作达到了最少数量,因此其处理的模板的能力实非常快速的。

引入依赖直接使用Thymeleaf

引入依赖

1
2
3
4
5
<!-- 解析依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

编写controller测试

1
2
3
4
5
6
7
@Controller
public class StartController {
@RequestMapping("start")
public String start(){
return "index";
}
}

然后我们访问我们的http://localhost:8080/start

结果如下:


引入Nekohtml依赖

  J. Andrew Clark 用Java写了一系列的工具 (Java APIs),NekoHTML 是其中之一。
  NekoHTML 是一个简单地HTML扫描器和标签补偿器(tag balancer) ,使得程序能解析HTML文档并用标准的XML接口来访问其中的信息。这个解析器能投扫描HTML文件并“修正”许多作者(人或机器)在编写HTML文档过程中常犯的错误。NekoHTML 能增补缺失的父元素、自动用结束标签关闭相应的元素,以及不匹配的内嵌元素标签。NekoHTML 的开发使用了Xerces Native Interface (XNI),后者是Xerces2的实现基础

下面引入Nekohtml依赖:

1
2
3
4
5
6
<!-- 用于启用不严格检查html -->
<dependency>
<groupId>net.sourceforge.nekohtml</groupId>
<artifactId>nekohtml</artifactId>
<version>1.9.22</version>
</dependency>

然后在配置文件中加入如下配置:

1
2
3
spring:
thymeleaf:
mode: LEGACYHTML5

我们再来测试访问http://localhost:8080/start

成功了!


ps:因作者能力有限,有错误的地方请见谅

  • 喜欢这篇文章的话可以用快捷键 Ctrl + D 来收藏本页
× 请我吃糖~
打赏二维码