SpringBoot--Thymeleaf迭代变量

本文详细介绍了如何在SpringBoot中使用Thymeleaf进行List和Map集合的遍历,包括状态变量如index、count、size等的使用方法,帮助开发者更好地理解和应用Thymeleaf模板引擎。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Thymeleaf 语法讲解

命名空间: 需要在html标签中添加该属性

xmlns:th=“http://www.thymeleaf.org”


1 List 集合的遍历

th:each=“var : ${list}”
迭代器,用于循环迭代集合

在这里插入图片描述在这里插入图片描述


2 List 集合的遍历(获取状态变量)

th:each=“var,varStatus : ${list}”
迭代器,用于循环迭代集合

状态变量中的属性

  1. index:当前迭代器的索引 从 0 开始
  2. count:当前迭代对象的计数 从 1 开始
  3. size:被迭代对象的长度
  4. odd/even:布尔值,当前循环是否是偶数/奇数 从 0 开始
  5. first:布尔值,当前循环的是否是第一条,如果是返回 true 否则返回 false
  6. last:布尔值,当前循环的是否是最后一条,如果是则返回 true 否则返回 false

在这里插入图片描述
在这里插入图片描述


3 Map 集合的遍历

th:each=“entry: ${map}”
迭代器,用于循环迭代集合

每一个遍历出来的对象都是一个Entry,通过entry对象可以取key或者value
在这里插入图片描述在这里插入图片描述

在这里插入图片描述


在这里插入图片描述在这里插入图片描述

<table border="1px">
     <tr>
         <th>id</th>
         <th>name</th>
         <th>age</th>
     </tr>
     <span th:each="u:${users}">
         <tr>
             <td th:text="${u.id}"></td>
             <td th:text="${u.name}"></td>
             <td th:text="${u.age}"></td>
         </tr>
     </span>
 </table>
 <hr>
     <table border="1px">
         <tr>
             <th>id</th>
             <th>name</th>
             <th>age</th>
             <th>index</th>
             <th>count</th>
             <th>even</th>
             <th>odd</th>
             <th>first</th>
             <th>last</th>
         </tr>
         <span th:each="u,status:${users}">
             <tr>
                 <td th:text="${u.id}"></td>
                 <td th:text="${u.name}"></td>
                 <td th:text="${u.age}"></td>
                 <td th:text="${status.index}"></td>
                 <td th:text="${status.count}"></td>
                 <td th:text="${status.even}"></td>
                 <td th:text="${status.odd}"></td>
                 <td th:text="${status.first}"></td>
                 <td th:text="${status.last}"></td>
             </tr>
         </span>
     </table>
 <hr>
 <table border="1px">
     <tr>
         <th>map遍历</th>
     </tr>
     <span th:each="u:${map}">
             <tr>
                 <td th:text="${u}"></td>
             </tr>
         </span>
 </table>
 <hr>
 <table border="1px">
     <tr>
         <th>map遍历</th>
         <th>map--key</th>
         <th>map--value</th>
     </tr>
     <span th:each="u:${map}">
             <tr>
                 <td th:text="${u}"></td>
                 <td th:text="${u.key}"></td>
                 <td th:text="${u.value}"></td>
             </tr>
         </span>
 </table>
 <hr>
 <table border="1px">
     <tr>
         <th>map遍历</th>
         <th>map--key</th>
         <th>map--value</th>
         <th>map--id</th>
         <th>map--name</th>
         <th>map--age</th>
     </tr>
     <span th:each="u:${map}">
             <tr>
                 <td th:text="${u}"></td>
                 <td th:text="${u.key}"></td>
                 <td th:text="${u.value}"></td>
                 <td th:text="${u.value.id}"></td>
                 <td th:text="${u.value.name}"></td>
                 <td th:text="${u.value.age}"></td>
             </tr>
         </span>
 </table>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值