SpringBoot使用thymeleaf实现一个前端表格方法详解

 更新时间:2022年10月08日 09:02:17   作者:刘婉晴  
Thymeleaf是一个现代的服务器端 Java 模板引擎,适用于 Web 和独立环境。Thymeleaf 的主要目标是为您的开发工作流程带来优雅的自然模板,本文就来用它实现一个前端表格,感兴趣的可以了解一下

1. User 实体类

注:这里使用了 Lombok 技术,通过 @Data 注释自动创建 get,set 方法;通过 @NoArgsConstructor 注释自动创建无参数的构造方法;通过 @AllArgsConstructor 注释自动创建有参数构造方法

如果不想使用,可以自行创建get,set 方法以及构造方法

import jdk.nashorn.internal.objects.annotations.Constructor;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@NoArgsConstructor
@AllArgsConstructor
@Data
public class User {
    private String userName;
    private String password;
}

2. Controller 类

创建一 user 的 list ,使用 addAttribute() 方法将其放入 medol 中,以便前端取出 medol 中的数据

注意:thymeleaf解析不能带 html 后缀,因此转发到 table下的dynamic_table.html 文件要写成 return "table/dynamic_table";

package com.wanqing.admin.controller;
import com.wanqing.admin.bean.User;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import java.util.Arrays;
import java.util.List;
@Controller
public class TableController {
    @GetMapping("/dynamic_table")
    public String dynamic_table(Model model){
        // 表格内容的遍历
        List<User> users = Arrays.asList(new User("刘婉晴", "520131"),
                new User("加油","aaa"),
                new User("不可以放弃","come on"));
        model.addAttribute("users", users);
        return "table/dynamic_table"; // thymeleaf解析不能带 html 后缀
    }
}

3. html 文件

创建 dynamic_table.html 文件在 templates 的 table 文件夹下

得到后端传入的数据的语法为 ${要操作的后端传入的数据}

  • 使用 th:each="user:${users}" 遍历得到每个 user。
  • 取出每个 user 值放入表格中时 可以使用 th:text="${user.userName}" 也可以使用[[${user.password}]]

注: stats 为自增 id,用于记录遍历到第几个 user,得到数量的方法为th:text="${stats.count}",用 逗号 与 user 隔开

        <!--body wrapper start-->
        <div class="wrapper">
        <div class="row">
        <div class="col-sm-12">
        <section class="panel">
	       <div class="panel-body">
	        <div class="adv-table">
	        <table  class="display table table-bordered table-striped" id="dynamic-table">
	        <thead> <!--标头-->
	        <tr>
	            <th>#</th>
	            <th>用户名</th>
	            <th>密码</th>
	        </tr>
	        </thead>
	        <tbody> <!--标体-->
	        <tr class="gradeX" th:each="user,stats:${users}">
	            <td th:text="${stats.count}">Trident</td>
	            <td th:text="${user.userName}">Internet</td>
	            <td>[[${user.password}]]</td>
	        </tr>
	        </tbody>
	        </table>
	        </div>
	        </div>
        </section>
        </div>
        </div>
        </div>
        <!--body wrapper end-->

到此这篇关于SpringBoot使用thymeleaf实现一个前端表格方法详解的文章就介绍到这了,更多相关SpringBoot thymeleaf内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java8中如何通过方法引用获取属性名详解

    Java8中如何通过方法引用获取属性名详解

    这篇文章主要给大家介绍了关于Java8中如何通过方法引用获取属性名的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • java springmvc乱码解决归纳整理详解

    java springmvc乱码解决归纳整理详解

    本篇文章介绍了java 中spring mvc 解决乱码的问题方法实例,需要的朋友可以参考下
    2017-04-04
  • Java使用POI导出Excel(二):多个sheet

    Java使用POI导出Excel(二):多个sheet

    这篇文章介绍了Java使用POI导出Excel的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-10-10
  • java中volatile关键字的作用详解

    java中volatile关键字的作用详解

    这篇文章主要介绍了java中volatile关键字的作用详解,volatile可以保证,若一个线程改变了某块内存的值,其他线程是可见的,以至于其他线程能及时更新这块内存,需要的朋友可以参考下
    2023-09-09
  • IDEA中sout快捷键无效问题的解决方法

    IDEA中sout快捷键无效问题的解决方法

    这篇文章主要介绍了IDEA中sout快捷键无效问题,在类文件中进行操作会造成sout快捷命令无法自动生成,比如操作了import引入其它包之后,本文给大家分享解决方法,感兴趣的朋友一起看看吧
    2022-07-07
  • C++ 归并排序(merge sort)案例详解

    C++ 归并排序(merge sort)案例详解

    这篇文章主要介绍了C++ 归并排序(merge sort)案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • Java组件FileUpload上传文件实现代码

    Java组件FileUpload上传文件实现代码

    这篇文章主要为大家详细介绍了Java组件FileUpload上传文件实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-06-06
  • Java8日期时间类LocalDateTime比较大小举例

    Java8日期时间类LocalDateTime比较大小举例

    LocalDate是Java 8中的日期类之一,它表示一个日期,下面这篇文章主要给大家介绍了关于Java8日期时间类LocalDateTime比较大小的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-05-05
  • java使用FuncGPT慧函数对Mybatis进行一对一查询映射处理

    java使用FuncGPT慧函数对Mybatis进行一对一查询映射处理

    这篇文章主要介绍了java使用FuncGPT慧函数对Mybatis进行一对一查询映射处理,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • Springboot微服务项目整合Kafka实现文章上下架功能

    Springboot微服务项目整合Kafka实现文章上下架功能

    这篇文章主要介绍了Springboot微服务项目整合Kafka实现文章上下架功能,包括Kafka消息发送快速入门及相关功能引入,本文通过示例代码给大家介绍的非常详细,需要的朋友可以参考下
    2022-07-07

最新评论