thymeleaf 常用标签使用方法:
基本使用方法
对象引用方法
时间类型转换
text 与 utext
URL 显示方式
引入静态资源文件 js/css
条件判断 th:if
th:unless 与 th:if
循环 th:each
th:switch 与 th:case
thymeleaf标签类似vue的bind
text和utext的区别,utext可以把样式代码直接转换成css样式代码展示出来,而text则是原封不动的展示标签内的内容
thymeleaf的 th标签以及日期格式转换
@符号后面接的是URL
spring.mvc.static-path-pattern=/static/**
设置项目的静态资源位置
th:text会原封不动的显示字符串,th:utext会对字符串进行渲染
在外层div中设置th:object传入对象
对于时间的格式化
${#dates.format(user.birthday, 'yyyy-MM-dd')}
thymeleaf常用标签的使用方法
渲染概念:根据标签里设置的属性进行页面的显示(例如input标签的value就可以进行显示文字)。
一、基本使用方式:标签里使用th:text="${}",这种形式可以获取到后端传过来的数据,其中th:后面可以是标签里的属性,像th:id,th:name,th:value等。
二、对象引用类型:不使用对象.属性这种方式,外边嵌套一层div,然后th:object="${传过来的对象名}",然后$符号替换成*号即可。

三、时间类型转换:默认是Date类型显示,可以通过在#dates.format(传过来的日期参数,日期的格式)。如图

四、text与utext的比较:如果th:后面是text,那么它会把传过来的内容原样的显示出来。而utext它会解析这个数据如果是html里的样式及标签,则自动转换成相应样式。



五、URL的方式:thymeleaf的url方式,th:href="@{地址}",它也支持普通的方式。如图

六、引入静态资源文件js/css:thymeleaf要引入静态文件,需要在application.properties中进行设置。如图,也就是说该项目如果使用静态文件会到static中去找。

如下图方式进行引入和url的方式相差不多

thymeleaf支持的form表单绑定url形式,如图,其中th:field可以自动解析为id=“”,name=“”,value=“”,不推荐使用,可读性不好,普通的方式也支持。

七、条件判断th:if——》和el表达式使用相同,大于gt,大于等于ge,小于lt,小于等于le,如果条件不满足则该标签不起作用。

判断的常用使用场景:列表标签,默认的选择和eq比较相等的。如图,eq写在外面也可以。


八、th:unless与th:if——》与if作用相反的。
九、th:switch与th:case——》#{roles.manager}相当于资源文件的使用,前提是进行资源文件的配置

十、th:each——》循环的作用,userList为传过来的集合,而person相当于jstl中的每一个变量。

th标签,属于前端
静态文件路径配置:spring.mvc.static-path-pattern=/static/**
了解20%
选择框<option th:selected="${user.name eq 'Lee'}">Lee</option>,判断是否是Lee,决定选择框默认展示什么
th:each="person:$userList}"
th:switch="${user.name}"
th:if="${user.age} == 18"
gt greater than 大于
lt less than 小于
ge great and equal 大于等于
le less and equal 小于等于
th:href="@{http://www.imooc.com}"
<script th:src="@{/static/js/test.js}"></script> 引入js
<form th:action="@{/th/postform}" th:object="${user}" method="post" th:method="post">
<input type="text" th:field="*{name}"/>
<input type="text" th:field="*{age}"/>
<input type="submit"/>
</form>
th:id="${user.name}"
th:name
th:value="${#dates.format(user.birthday, 'yyyy-MM-dd')}"
th:object="${user}" th:id="*{name}"
text和utext
th:text="${user.desc}" 直接打印所有
th:utext="${user.desc}" html css会生效
地址相关的@{}
声明了对象的
th:object="${user}" =》 *{name}没有申明对象的
${user.name}
用户姓名:<input th:id="${user.name}" th:name="${user.name}" th:value="${user.name}">
<br/>
用户年纪:<input th:value="${user.age}">
<br/>
用户生日:<input th:value="${user.birthday}">
<br/>
用户生日:<input th:value="${#dates.format(user.birthday,'yyyy/MM/dd HH/mm/SS a')}">后端:将从数据库得到的对象,装载到map中,前端data展示的就是实时的数据值
switch case也可以在thymeleaf 中使用
可以比较$value的大小
js 可以放在resource/static中使用
静态文件的路径可以在properties文件中设置
spring.mvc.static-path-pattern=/static/**
th:utext 可以实现富文本编辑,显示css的效果
some of tags used often
frequently used tags
i18n的配置
th:switch
#{roles.manager} 资源文件的使用,在application.properties里配置了i18n
th:each的使用
选择框 select、checkbox
th:if的使用
gt 大于 lt 小于 ge大于等于 le 小于等于
form的使用
th:field="*{name}"
== id="name" name="name" value="LeeCX"