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());
        }
    }
}
相关推荐
咖啡八杯4 小时前
GoF设计模式——策略模式
java·后端·spring·设计模式
用户1285261160211 小时前
我把祖传Java项目重构后,接口响应从3s砍到了200ms,只改了这几行代码
java
Linsk11 小时前
组件 = 模板 + 业务逻辑
java·前端·vue.js
Nturmoils12 小时前
订单列表慢查询,先看 WHERE、ORDER BY 和 LIMIT
数据库
星沉远浦12 小时前
用Gemini高效解决Java代码报错难以定位的问题
java
用户2986985301416 小时前
Word 文档字符级格式化:Java 实现方案详解
java·后端
渣波16 小时前
拒绝 SQL 焦虑!手把手带你用 NestJS + Prisma + DTO 写出“防弹”级后端代码
javascript·数据库·后端
笨鸟飞不快16 小时前
从单个服务到集群:一次完整的性能排查复盘
java·前端
荣码16 小时前
用Streamlit给AI应用套个界面,10行代码出Web页面
java·python
SamDeepThinking17 小时前
Java微服务练习方式
java·后端·微服务