thymeleaf常用标签

th:text

用于文本的显示,并且可以进行简单的计算。

<td  th:text="${username}">mlm</td> -> <td>maliming</td>

<td  th:text="9+7">2018</td> -> <td>16</td>

th:utext

用于html的文本替换,常用于富文本编辑器编辑后的内容显示到前台页面上。

<p th:utext="${article.content}"></p> -> <p>my name is <b>maliming</b></p>

th:if

用于判断条件,还可以多条件and or ! not

<div th:if="${user} != null">show</div>如果user对象为空则不显示,不为空则显示 -> <div>show</div>

<div th:if="${user} != null and ${otherUser} != null">show</div> 

运算符还可以写在${}里,此时整个{}内的表达式用ognl/spel引擎计算,如果运算符放在外部,那么thymeleaf引擎负责计算。

th:unless

用于判断条件,与th:if作用相反。

<div th:if="${user} != null">show</div>如果user对象不为空则不显示,为空则显示 -> <div>show</div>

th:switch th:case

用于多个同等级相同目的判断,多选一时使用

<div th:switch="${user.name}">

    <p th:case="maliming">first</p>若${user.name}中的值为maliming则显示,否则不显示

    <p th:case="${otherUser.name}">second</p>

</div>

th:action

用于定义后台控制器的路径,表单的提交地址,相当于<form>标签的action属性。

<form th:action="@{user/login}" method="post"></form>

th:each用于遍历集合中的对象,相当于jstl中的<c:forEach>标签

<tr th:each="user,userStat:${messages.list}">

    <td th:text="${user.name}"></td>

    <td th:text="userStat.index"></td>

</tr>

其中的user是临时变量,相当于for(User user:users)中的user,userStat称为状态变量,属性有

(1)index,当前迭代对象的index(从0开始计算)

(2)count,当前迭代对象index(从1开始计算)

(3)size,被迭代对象的大小

(4)current,当前迭代变量

(5)even/odd,布尔值,当前循环是否是偶数/奇数

(6)first,布尔值,当前循环是否是第一个

(7)last,布尔值,当前循环是否是最后一个

th:value

用于属性赋值

<option th:value="${user.name}"></option> -> <option value="maliming"></option>

th:src

用于外部资源的引入

<img th:src="@{../images/myself.jpg}"/>或<script th:src="@{../static/login.js}"></script>

th:href

用于定义超链接,相当于<a></a>标签的href属性。

<a th:href="@{/user/selectUser?(currentPage=1,reTypeid=${reTypeid},inquiry=${inquiry})}"></a> 传参。

th:remove

用于删除,可以表达式传参。

<table border="1">  
    <thead>  
          <tr>  
             <th>编号</th>  
             <th>用户名</th>    
             <th>姓名</th>   
             <th>性别</th>  
          </tr>  
    </thead>  
    <tbody th:remove="all-but-first" 或者表达式th:remove="${choice}? all : all-but-first">  
          <tr>  
             <td>1</td>  
             <td>xxxxxxxx@qq.com</td>  
             <td>Tom</td>  
             <td>男</td>  
          </tr>  
          <tr>  
             <td>3</td>  
             <td>xxxxxxxx@qq.com</td>  
             <td>Lucy13</td>  
             <td>女</td>  
           </tr>  

     </tbody>

</table>  

th:remove有五个属性值。

(1)all:删除所在标签和内容及其所属的所有子标签。

(2)body:删除所在标签的内容及其所属的所有子标签。

(3)tag:删除所在标签,不删除任何所属的子标签。

(4)all-but-first:删除除第一个子标签外的其他子标签。

(5)none:不起作用,什么也不做。

th:selected

用于选择框设置选中的值。

<select>

    <option th:selected="${user.name} == ${otherUser.name}"></option> 若相等就默认选中此<option></option>

</select>

th:object

用于表单数据对象的绑定,后台controller中参数保持一致,和选择(星号)表达式。

<form th:object="${user}">
    <input th:value="*{name}"/> *号代替了${user}
</form>
public ModelAndView addUser(@RequestParam(value = "user") User user,ModelMap model){}

th:attr

用于设置任意属性。

<input th:attr="value=${user.name}"/> 设置单个属性。

<input th:attr="value=${user.username},name=username"/> 设置多个属性之间用逗号隔开。

内置对象

#dates:日期格式化内置对象,具体方法可以参照java.util.Date;
#calendars:类似于#dates,但是是java.util.Calendar类的方法;
#numbers: 数字格式化;
#strings:字符串格式化,具体方法可以参照java.lang.String,如startsWith、contains等;
#objects:参照java.lang.Object;
#bools:判断boolean类型的工具;
#arrays:数组操作的工具;
#lists:列表操作的工具,参照java.util.List;
#sets:Set操作工具,参照java.util.Set;
#maps:Map操作工具,参照java.util.Map;
#aggregates:操作数组或集合的工具;
#messages:操作消息的工具。

 

最后欢迎大家访问我的个人网站:1024s​​​​​​​

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值