java连接数据库ResultSet类(用于查询返回值)

复制代码
package com.ResultSet;

import javax.crypto.spec.OAEPParameterSpec;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;

public class demo1 {
    public static void main(String[] args)throws Exception {
        String url = "jdbc:mysql:///db";
        String name = "root";
        String passwd = "123";
        Connection conn = DriverManager.getConnection(url,name, passwd);

        //DQL查询语句
        //ResultSet其实就是执行对象执行executeQuery(sql)的结果 , 返回的是ResultSet类型的值(查询)
        //默认有个游标指向第一行(头行)
        //next() 1.将光标从当前位置向下移动一行 (2)判断当前行是否为有效行
        //getXxx(参数) 获取数据            (xxx)为数据类型
        //参数有两种形式
        //int:列的编号(从1开始) string(列的名称)

        String sql = "select *from account";
        Statement execute = conn.createStatement();
        ResultSet rs = execute.executeQuery(sql);

        //处理结果,遍历rs所有数据
        //光标向西移动一行,并且判断该当前是否有数据
        ArrayList<data_object> array = new ArrayList<>();
        while(rs.next()){
            //获取数据
            //单个获取
            int id =rs.getInt("id");
            String names = rs.getString("name");
            double money = rs.getDouble("money");
//            int id =rs.getInt(1);
//            String names = rs.getString(2);
//            double money = rs.getDouble(3);


            //封装获取 (自己根据情况定义一个对象,对象来获取每一行的值,再设定一个集合来储存对象,最后通过集合读出)
            data_object sign = new data_object(id,names,money);
            array.add(sign);



            System.out.println(id);
            System.out.println(names);
            System.out.println(money);
            System.out.println("-----------------");
        }
        rs.close();
        execute.close();
        conn.close();

        for (int i = 0; i < array.size(); i++) {
            System.out.println(array.get(i).toString());
        }
    }
}
相关推荐
mldong15 分钟前
"applicant" 契约:退回发起人的闭环设计
java·架构
布莱克60532 分钟前
理解索引:从概念到实践
数据库·mysql
月华路34 分钟前
G1 垃圾回收:脏卡队列、记忆集与并发精化线程机制
java·开发语言
gugucoding1 小时前
47. 【Java】Java内存模型(JMM)与可见性
java·开发语言
zww89491112 小时前
校园跑腿系统开发实战指南:从需求分析到上线部署全流程解析
java
Fluxart.ai2 小时前
电商商品图审核怎么自动化?规则引擎、人工复核与发布门禁
java·前端·自动化
名字还没想好☜3 小时前
Java 线上内存泄漏排查实战:jmap 导堆、MAT 找 GC Roots 与四类常见泄漏
java·开发语言·jvm·内存泄漏
我不是疯子是傻子4 小时前
Qt CAN通信周期发送抖动?实测定时器精度校准与时间戳补偿方案
开发语言·数据库·qt
这个DBA有点耶4 小时前
数据库迁移怎么做到“零翻车“:金仓 KDMS/KDTS/KFS 工具链实测
数据库·架构·dba
IT爱学堂4 小时前
尚硅谷 - 2025年3月Java+AI大模型应用开发
java·开发语言·人工智能