返回顶部
首页 > 资讯 > 前端开发 > node.js >Thymeleaf数据迭代的方法是什么
  • 591
分享到

Thymeleaf数据迭代的方法是什么

2024-04-02 19:04:59 591人浏览 泡泡鱼
摘要

本篇内容介绍了“Thymeleaf数据迭代的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! T

本篇内容介绍了“Thymeleaf数据迭代的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

Thymeleaf数据迭代使用th:each属性,可以迭代数组、List、Set和Map等,数组、List、Set的迭代方法类似,迭代Map则会得到一个java.util.Map.Entry对象。
在迭代过程中,还可以获取迭代状态的变量,如迭代索引、数据集合大小等等。

开发环境:IntelliJ idea 2019.2.2
Spring Boot版本:2.1.8

新建一个名称为demo的spring Boot项目

1、pom.xml
加入Thymeleaf依赖

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>

2、src/main/java/com/example/demo/user.java

package com.example.demo;

public class User {
    Integer id;
    String name;

    public User(Integer id, String name) {
        this.id = id;
        this.name = name;
    }
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

3、src/main/java/com/example/demo/TestController.java

package com.example.demo;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.WEB.bind.annotation.RequestMapping;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@Controller
public class TestController {
    @RequestMapping("/")
    public String test(Model model){
        List<User> users = new ArrayList<User>();
        users.add(new User(1,"张三"));
        users.add(new User(2,"李四"));
        users.add(new User(3,"王五"));
        model.addAttribute("users", users);

        Map<String, User> userMap = new HashMap<String,User>();
        userMap.put("a", new User(4, "赵六"));
        userMap.put("b", new User(5, "钱七"));
        model.addAttribute("userMap", userMap);
        return "test";
    }
}

4、src/main/resources/templates/test.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style type="text/CSS">
        table { border-collapse:collapse;}
        td { border: 1px solid #C1DAD7;}
    </style>
</head>
<body>

<div>迭代List</div>
<table>
    <tr th:each="user : ${users}">
        <td th:text="${user.id}"></td>
        <td th:text="${user.name}"></td>
    </tr>
</table>

<div>迭代Map</div>
<table>
    <tr th:each="map : ${userMap}">
        <td th:text="${map.key} + |--| + ${map.value.id} + |--| + ${map.value.name}"></td>
    </tr>
</table>

<div>迭代状态对象</div>
<table>
    <tr th:each="data,iterState : ${#numbers.sequence(0,2)}"
        th:style="|background-color:| + ${iterState.odd ? 'while' : 'gray'}">
        <td th:text="|从0开头的索引:| + ${iterState.index}"></td>
        <td th:text="|从1开头的索引:| + ${iterState.count}"></td>
        <td th:text="|数据集合大小:| + ${iterState.size}"></td>
        <td th:text="|当前节点:| + ${iterState.current}"></td>
        <td th:text="|是否第一次迭代:| + ${iterState.first}"></td>
        <td th:text="|是否最后一次迭代:| + ${iterState.last}"></td>
        <td th:text="|是否偶数迭代:| + ${iterState.even}"></td>
        <td th:text="|是否奇数迭代:| + ${iterState.odd}"></td>
    </tr>
</table>
上面的iterState是显式声明的迭代状态对象,也可以按默认规划“节点变量名+Stat”获取
<table>
    <tr th:each="data : ${#numbers.sequence(0,2)}"
        th:style="|background-color:| + ${dataStat.odd ? 'while' : 'gray'}">
        <td th:text="${data}"></td>
    </tr>
</table>
<table>
    <tr th:each="user : ${users}"
        th:style="|background-color:| + ${userStat.odd ? 'while' : 'gray'}">
        <td th:text="${user.id}"></td>
        <td th:text="${user.name}"></td>
    </tr>
</table>

</body>
</html>

浏览器访问:Http://localhost:8080,截图如下:

Thymeleaf数据迭代的方法是什么

 右键查看网页源代码,生成的HTML源码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style type="text/css">
        table { border-collapse:collapse;}
        td { border: 1px solid #C1DAD7;}
    </style>
</head>
<body>

<div>迭代List</div>
<table>
    <tr>
        <td>1</td>
        <td>张三</td>
    </tr>
    <tr>
        <td>2</td>
        <td>李四</td>
    </tr>
    <tr>
        <td>3</td>
        <td>王五</td>
    </tr>
</table>

<div>迭代Map</div>
<table>
    <tr>
        <td>a--4--赵六</td>
    </tr>
    <tr>
        <td>b--5--钱七</td>
    </tr>
</table>

<div>迭代状态对象</div>
<table>
    <tr style="background-color:while">
        <td>从0开头的索引:0</td>
        <td>从1开头的索引:1</td>
        <td>数据集合大小:3</td>
        <td>当前节点:0</td>
        <td>是否第一次迭代:true</td>
        <td>是否最后一次迭代:false</td>
        <td>是否偶数迭代:false</td>
        <td>是否奇数迭代:true</td>
    </tr>
    <tr style="background-color:gray">
        <td>从0开头的索引:1</td>
        <td>从1开头的索引:2</td>
        <td>数据集合大小:3</td>
        <td>当前节点:1</td>
        <td>是否第一次迭代:false</td>
        <td>是否最后一次迭代:false</td>
        <td>是否偶数迭代:true</td>
        <td>是否奇数迭代:false</td>
    </tr>
    <tr style="background-color:while">
        <td>从0开头的索引:2</td>
        <td>从1开头的索引:3</td>
        <td>数据集合大小:3</td>
        <td>当前节点:2</td>
        <td>是否第一次迭代:false</td>
        <td>是否最后一次迭代:true</td>
        <td>是否偶数迭代:false</td>
        <td>是否奇数迭代:true</td>
    </tr>
</table>
上面的iterState是显式声明的迭代状态对象,也可以按默认规划“节点变量名+Stat”获取
<table>
    <tr style="background-color:while">
        <td>0</td>
    </tr>
    <tr style="background-color:gray">
        <td>1</td>
    </tr>
    <tr style="background-color:while">
        <td>2</td>
    </tr>
</table>
<table>
    <tr style="background-color:while">
        <td>1</td>
        <td>张三</td>
    </tr>
    <tr style="background-color:gray">
        <td>2</td>
        <td>李四</td>
    </tr>
    <tr style="background-color:while">
        <td>3</td>
        <td>王五</td>
    </tr>
</table>

</body>
</html>

“Thymeleaf数据迭代的方法是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: Thymeleaf数据迭代的方法是什么

本文链接: https://lsjlt.com/news/88602.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Thymeleaf数据迭代的方法是什么
    本篇内容介绍了“Thymeleaf数据迭代的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! T...
    99+
    2024-04-02
  • tensorflow数据迭代的方法是什么
    在TensorFlow中,可以使用tf.data模块来对数据进行迭代。tf.data模块提供了一系列方便的工具和函数来处理和转换数据...
    99+
    2024-03-15
    tensorflow
  • 实现Springboot Thymeleaf数据迭代的示例分析
    小编给大家分享一下实现Springboot Thymeleaf数据迭代的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在模板文件中,可以使用“${{......
    99+
    2023-06-08
  • java迭代器遍历的方法是什么
    Java迭代器遍历的方法是使用while循环和迭代器的`hasNext()`和`next()`方法进行遍历。具体步骤如下:1. 创建...
    99+
    2023-08-11
    java
  • python什么是迭代函数
    python中的迭代函数有next和iter两个iter:iter()函数的作用是用来生成迭代器。next:next()函数的作用是返回迭代器的下一个项目。iter()函数语法:iter(object[, sentinel])参数:obje...
    99+
    2024-04-02
  • mybatis迭代器的用法是什么
    MyBatis中迭代器的用法是用于处理集合或数组的元素。它可以简化对集合或数组元素的遍历和操作。 在MyBatis的Mapper X...
    99+
    2024-02-29
    mybatis
  • Python中迭代和迭代器是什么
    本篇文章给大家分享的是有关Python中迭代和迭代器是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。可迭代一个对象,物理或者虚拟存储的序列。list,tuple,strin...
    99+
    2023-06-17
  • 归并排序的迭代实现方法是什么
    本篇内容介绍了“归并排序的迭代实现方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!归并排序的迭代实...
    99+
    2024-04-02
  • java迭代器循环删除的方法是什么
    在Java中,迭代器循环删除元素有两种常用的方法:1. 使用Iterator的remove()方法:迭代器的remove()方法可以...
    99+
    2023-08-28
    java
  • JavaScript 数组迭代的方法
    这篇文章主要介绍“JavaScript 数组迭代的方法”,在日常操作中,相信很多人在JavaScript 数组迭代的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java...
    99+
    2024-04-02
  • JavaScript数组迭代的方法
    今天小编给大家分享一下JavaScript数组迭代的方法的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来...
    99+
    2024-04-02
  • SpringBoot整合Thymeleaf视图的方法是什么
    这篇文章主要介绍了SpringBoot整合Thymeleaf视图的方法是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇SpringBoot整合Thymeleaf视图的方法是...
    99+
    2024-04-02
  • Java中集合的迭代方式是什么
    本文小编为大家详细介绍“Java中集合的迭代方式是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“Java中集合的迭代方式是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。集合的迭代流使得程序员得以站在更高...
    99+
    2023-07-05
  • C++迭代器与二分查找方法是什么
    本篇内容主要讲解“C++迭代器与二分查找方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C++迭代器与二分查找方法是什么”吧!boolsearch_value_loop(std::vec...
    99+
    2023-06-04
  • JavaScript中可迭代对象与迭代器的作用是什么
    今天就跟大家聊聊有关JavaScript中可迭代对象与迭代器的作用是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Lazy evaluation...
    99+
    2024-04-02
  • js数组的 entries() 获取迭代方法
    目录1、entires() 方法语法详解2、entires() 方法常见使用及注意2.1 返回迭代器对象2.2 for...of...的使用2.3 二维数组行排序1、entires(...
    99+
    2024-04-02
  • JS中数组的迭代方法和归并方法
    本篇内容介绍了“JS中数组的迭代方法和归并方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!数组的迭代方法...
    99+
    2024-04-02
  • php迭代器 是什么意思
    本文操作环境:windows7系统、PHP7.1版、DELL G3电脑php迭代器 是什么意思?PHP 迭代器模式迭代器:类继承PHP的Iterator接口,批量操作。 迭代器模式,在不需要了解内部实现的前提下,遍历一个聚合对象的内部元素。...
    99+
    2014-12-31
    php迭代器
  • 数组迭代reduce和reduceRight方法怎么用
    本文小编为大家详细介绍“数组迭代reduce和reduceRight方法怎么用”,内容详细,步骤清晰,细节处理妥当,希望这篇“数组迭代reduce和reduceRight方法怎么用”文章能帮助大家解决疑惑,...
    99+
    2024-04-02
  • JavaScript数组中迭代方法怎么实现
    今天小编给大家分享一下JavaScript数组中迭代方法怎么实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作