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());
        }
    }
}
相关推荐
雄鸡三声天下白1 小时前
js复制文本到剪贴板,以及navigator.clipboard 会提示 is undefined
前端·javascript·数据库
不吃葱的胖虎1 小时前
根据Excel模板,指定单元格坐标填充数据
java·excel
k***92161 小时前
C语言模拟面向对象三大特性与C++实现对比
java·c语言·c++
致Great1 小时前
使用 GRPO 和 OpenEnv 微调小型语言模型实现浏览器控制
数据库·人工智能·深度学习·语言模型·自然语言处理·agent·智能体
野生技术架构师1 小时前
SpringBoot健康检查完整指南,避免线上事故
java·spring boot·后端
代码游侠1 小时前
应用——SQLite3 C 编程学习
linux·服务器·c语言·数据库·笔记·网络协议·sqlite
疯狂成瘾者1 小时前
Lombok 可以生成哪些类方法
java·tomcat·maven
于樱花森上飞舞1 小时前
【多线程】CAS和哈希表
java·数据结构·java-ee
七夜zippoe1 小时前
MyBatis插件开发-实现SQL执行耗时监控
java·sql·mybatis·springboot·责任链
三天不学习1 小时前
【2025年CSDN博客之星主题创作文章】我在 Python 与数据智能领域的深耕与突破 —— 年度技术复盘与思考
android·数据库·python