JDBC ResultSet案例[查询数据库表数据-封装为对象-存储到集合中]

文章目录


前言

案例需求:

        查询account账户表数据,封装为Account对象中,并且存储到ArrayList集合中如下图:

 


 

一、创建实体类Account

        创建对象用来存储每一条数据

package pojo;

public class Account {
    private int id;
    private String name;
    private int money;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getMoney() {
        return money;
    }

    public void setMoney(int money) {
        this.money = money;
    }

    @Override
    public String toString() {
        return "Account{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", money=" + money +
                '}';
    }
}

二、功能实现核心代码

将查询结果存入ResultSet

ResultSet rs =  stmt.executeQuery(sql);

查询数据,封装到Account对象中

while(rs.next()){
            //对象的创建
            Account account=new Account();
            int id=rs.getInt("id");
            String name=rs.getString("name");
            int monery=rs.getInt("monery");

            //赋值给account对象
            account.setId(id);
            account.setName(name);
            account.setMoney(monery);

           
        }

将Account对象存入ArrayList集合中

        创建集合

 List<Account> list=new ArrayList<>();

        对象存入集合

list.add(account);

         打印集合

System.out.println(list);

 三、结果显示

 

 


总结

为以后打基础,以后要把数据显示到页面上都是先查询然后把每条数据转换成对象封装起来,最后存到集合里对数据进行操作后显示到页面上。

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,根据你的要求,我来编写一个Java方法,实现查询dept数据,将其封装对象,然后装载到集合返回。 ``` import java.sql.*; import java.util.ArrayList; import java.util.List; public class DeptDao { // 查询dept数据,将其封装对象,然后装载到集合返回 public List<Dept> getDeptList() { List<Dept> deptList = new ArrayList<>(); String sql = "SELECT * FROM dept"; try { // 获取数据库连接 Connection conn = getConnection(); // 创建Statement对象 Statement stmt = conn.createStatement(); // 执行查询语句,获取结果集 ResultSet rs = stmt.executeQuery(sql); // 遍历结果集,将每条记录封装为Dept对象,并添加到deptList集合 while (rs.next()) { Dept dept = new Dept(); dept.setDeptNo(rs.getInt("deptno")); dept.setDname(rs.getString("dname")); dept.setLoc(rs.getString("loc")); deptList.add(dept); } // 关闭连接和Statement对象 rs.close(); stmt.close(); conn.close(); } catch (SQLException e) { e.printStackTrace(); } // 返回deptList集合 return deptList; } // 获取数据库连接 private Connection getConnection() throws SQLException { String url = "jdbc:mysql://localhost:3306/test"; String user = "root"; String password = "123456"; return DriverManager.getConnection(url, user, password); } } ``` 上述代码,我们使用JDBC查询dept数据,将每条记录封装为Dept对象,并添加到deptList集合。注意,为了方便演示,我们在代码直接将数据库的连接信息写死了,实际应用应该使用配置文件或者其他方式来获取连接信息。另外,我们也没有对异常进行详细处理,实际应用应该根据具体情况来处理异常。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

心态还需努力呀

你的鼓励将是我创作的最大动力~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值