Thymeleaf 与 JSP

2020/11/16 20

Thymeleaf

尽管 JSP 已经存在很长时间了,并且在 Java Web 中无处不在,但是它有一些缺点。

JSP 的缺点

难以阅读

JSP 最明显的缺点是它看起来像 HTML 或 XML,但它其实并不是。大多数的 JSP 模板都采用了 HTML 的形式,但是又参杂上各种 JSP 标签库的标签,使其变得很混乱。这些标签库能够以很便利的方式为 JSP 带来动态渲染的强大功能,但它也让模板变得难以阅读。

JSP 与 Servlet 紧耦合

JSP 规范与 Servlet 规范是紧密耦合的,这意味着它只能用于基于 Servlet 的 Web 应用中。JSP 模板不能作为通用的模板,如:格式化 Email,也不能用于非 Servlet 的 Web 应用。


多年来,在 Java 应用中,有很多项目视图挑战 JSP 在视图领域的统治地位。最新的挑战者是 Thymeleaf,Thymeleaf 模板是原生的,不依赖于标签库。它能在接受原始 HTML 的地方进行编辑和渲染。因为它没有与 Servlet 规范耦合,因此 Thymeleaf 模板能够进入 JSP 无法涉足的领域。