idea利用spring框架整合thymeleaf展现数据库数据

idea初步利用thymeleaf展现列表

上一篇文章简单展现自己写的列表;

这篇文章连接mysql数据库实现数据库数据展现

主要三个文件

controller指定html界面

复制代码
package com.example.appledemo.controller;

import com.example.appledemo.mapper.UserMapper;
import com.example.appledemo.pojo.User;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.ui.Model;

import java.util.ArrayList;
import java.util.List;

@Controller
public class TestController {
    @Resource
    UserMapper userMapper;

    @RequestMapping("/login")
    public String login(Model model){
        List<User> user = userMapper.findAll();
        model.addAttribute("user",user);
        return "login";
    }
}

mapper写数据库sql查询语句

复制代码
package com.example.appledemo.mapper;

import com.example.appledemo.pojo.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.util.List;

@Mapper
public interface UserMapper {
    @Select("SELECT * FROM user")
    List<User> findAll();
}

pojo中的user写具体数据库中的表包含哪些字段(这部分最好的方式写出变量名字然后alt+insert自动生成getter和setter不容易出错)

复制代码
package com.example.appledemo.pojo;

import lombok.Getter;

@Getter
public class User {
    private Integer userId;
    private String userName;
    private String userPass;

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public void setUserPass(String userPass) {
        this.userPass = userPass;
    }

    public void setUserId(Integer userId) {
        this.userId = userId;
    }

    @Override
    public String toString() {
        return "User{" +
                "userId=" + userId +
                ", userName='" + userName + '\'' +
                ", userPass='" + userPass + '\'' +
                '}';
    }
}

最后写个login.html展现数据

复制代码
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>springboot-thymeleaf demo</title>
</head>
<body>
<table border="1" width="1000">
    <tr th:each="item,eee: ${user}">
        <td th:text="${item.userId}"></td>
        <td th:text="${item.userName}"></td>
        <td th:text="${item.userPass}"></td>
    </tr>
</table>
</body>
</html>
</html>

给出文件列表:

最后给出运行结果:

相关推荐
啊吧怪不啊吧1 小时前
极致性能的服务器Redis之String类型及相关指令介绍
网络·数据库·redis·分布式·mybatis
zihan03211 小时前
Redis Windows版本默认配置文件,Redis配置不生效解决方案
数据库·redis·缓存
Hgfdsaqwr2 小时前
实战:用Python开发一个简单的区块链
jvm·数据库·python
砚边数影2 小时前
InfluxDB迁移替换实战:金仓时序数据库如何提高写入性能
数据库·性能优化·时序数据库·kingbase·kingbasees·金仓数据库
eWidget8 小时前
InfluxDB迁移至金仓数据库的同城容灾实践:性能显著提升、运维效率优化,某能源企业实现RPO_5秒的高可靠时序数据管理
运维·数据库·能源·时序数据库·kingbase·kingbasees·金仓数据库
小句8 小时前
MySQL慢查询日志详细使用指南
数据库·mysql·adb
没有bug.的程序员9 小时前
Spring Cloud Eureka:注册中心高可用配置与故障转移实战
java·spring·spring cloud·eureka·注册中心
老邓计算机毕设9 小时前
SSM医疗资源普查6qxol(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架·javaweb开发·医疗资源管理
dyyx1119 小时前
如何从Python初学者进阶为专家?
jvm·数据库·python
码农水水9 小时前
中国邮政Java面试被问:容器镜像的多阶段构建和优化
java·linux·开发语言·数据库·mysql·面试·php