What is Thymeleaf?

来自于官方文档翻译!!

Thymeleaf是一个Java库。它是一个XML / XHTML / HTML5模板引擎,能够将一组转换应用于模板文件,以显示应用程序生成的数据和/或文本。

它更适合在Web应用程序中提供XHTML / HTML5,但它可以处理任何XML文件,无论是在Web中还是在独立应用程序中。

Thymeleaf的主要目标是提供一种优雅且格式良好的创建模板的方法。为了实现这一点,它基于XML标签和属性,它们定义了DOM(文档对象模型)上预定义逻辑的执行,而不是在模板中显式地将该逻辑写为代码。

其架构允许快速处理模板,依赖于已解析文件的智能缓存,以便在执行期间使用尽可能少的I / O操作。

最后但并非最不重要的是,Thymeleaf从一开始就设计了XML和Web标准,如果您需要,可以创建完全验证的模板。

th:action

定义后台控制器路径,类似<form>标签的action属性。

例如:

th:each

对象遍历,功能类似jstl中的<c:forEach>标签。

例如:

上面的例子中通过选择表达式*{}既能将表单绑定到后台的StudentRequestBean中的集合属性students,也能将Servlet上下文中的StudentRequestBean中的List类型的students变量回显,回显时通过th:each进行遍历。

注意1:绑定集合属性元素下标的用法*{students[__${rowStat.index}__].firstName}

注意2:如果List<Student> students为null,页面将无法显示表单,后台必须给students初始化一个值,即:

注意3:stuIter代表students的迭代器

th:field

常用于表单字段绑定。通常与th:object一起使用。 属性绑定、集合绑定。

如:

 

th:href

定义超链接,类似<a>标签的href 属性。value形式为@{/logout}

例如:

 

th:id

div id声明,类似html标签中的id属性。

例如:

 

th:if

条件判断。

例如:

th:include

见th:fragment

th:fragment

声明定义该属性的div为模板片段,常用与头文件、页尾文件的引入。常与th:include,th:replace一起使用。

例如:

声明模板片段/WEBINF/templates/footer. html

引入模板片段

 

th:object

用于表单数据对象绑定,将表单绑定到后台controller的一个JavaBean参数。常与th:field一起使用进行表单数据绑定。

例如:

th:src

用于外部资源引入,类似于<script>标签的src属性,常与@{}一起使用。

例如:

th:replace

见th:fragment

th:text

文本显示。

例如:

th:value

用于标签复制,类似<option>标签的value属性。

例如:

订阅评论
提醒
2 评论
最新
最旧 最多投票
内联反馈
查看所有评论

Thank you for your attention. I’ll keep trying

Made it myself. Ha Ha

2
0
希望看到您的想法,请您发表评论x