Eclipse中java获得mysql的查询结果集

不废话,先上代码,再上解释说明

 1 package com.ningmeng;
 2 
 3 import java.sql.*;
 4 /**
 5  * 1:获取查询结果集
 6  * @author biexiansheng
 7  *
 8  */
 9 public class Test03 {
10 
11     public static void main(String[] args) {
12         try {
13             Class.forName("com.mysql.jdbc.Driver");
14             System.out.println("加载数据库驱动成功");
15             String url="jdbc:mysql://localhost:3306/test";//声明数据库test的url
16             String user="root";//数据库账号
17             String pass="123456";//数据库密码
18             //建立数据库连接,获得连接对象conn
19             Connection conn=DriverManager.getConnection(url,user,pass);
20             System.out.println("数据库连接成功");
21             Statement stmt=conn.createStatement();//创建一个Statement对象
22             String sql="select * from users";//生成一条sql语句
23             ResultSet rs=stmt.executeQuery(sql);//执行查询,把查询结果赋值给结果集对象
24             int id,age,sex;//声明3个变量分别为id,age,sex
25             String username,password;//声明2个变量分别为用户名,密码
26             System.out.println("id\t 用户名\t 密码 \t  年龄\t 性别");//其中\t相当于8个空格
27             while(rs.next()){//遍历结果集
28                 id=rs.getInt("id");//获得id
29                 username=rs.getString(2);//
30                 password=rs.getString("password");//
31                 age=rs.getInt(4);//
32                 sex=rs.getInt(5);//
33                 System.out.println(id+"\t"+username+"\t"+password+"\t"+age+"\t"+
34                         sex+"\t");
35             }
36             System.out.println("获得查询结果集");
37             conn.close();
38             System.out.println("关闭数据库连接对象");
39         } catch (ClassNotFoundException e) {
40             // TODO Auto-generated catch block
41             e.printStackTrace();
42         }//加载数据库驱动
43         catch (SQLException e) {
44             // TODO Auto-generated catch block
45             e.printStackTrace();
46         }
47     
48         
49     }
50 }

结果如下所示

1:Result接口类似于一个临时表,用来暂时存放数据库查询操作所获得的结果集。

2:PreparedStatement接口中的excuteQuery()方法,在此PreparedStatement对象执行sql查询语句,返回结果为查询结果集Result对象

3:next()将指针向下移一行

4:ResultSet对象的getXXX()方法可获取查询结果集中数据。由于ResultSet中保存的数据是表的形式,因此可通过使用getXXX()方法指定列的序号与列的名称。

id=rs.getInt("id");//获得id

username=rs.getString(2);//

password=rs.getString("password");//

age=rs.getInt(4);//

sex=rs.getInt(5);//

仔细体会就可以明白,getXXX(参数);参数既可以是列的名称还可以是第几列的数字。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏崔庆才的专栏

Python操作MongoDB看这一篇就够了

2.3K4
来自专栏小樱的经验随笔

C/C++中peek函数的原理及应用

C++中的peek函数   该调用形式为cin.peek() 其返回值是一个char型的字符,其返回值是指针指向的当前字符,但它只是观测,指针仍停留在当前位置,...

2875
来自专栏博岩Java大讲堂

Java虚拟机--线程上下文类加载器

2054
来自专栏IMWeb前端团队

Zepto核心模块之工具方法拾遗

本文作者:IMWeb 谦龙 原文出处:IMWeb社区 未经同意,禁止转载 前言 平时开发过程中经常会用类似each、map、forEach之类的方法...

2876
来自专栏yl 成长笔记

深刻理解反射(Reflection)

最近公司在搞自动化测试,由于版权问题,无法用 ’录制脚本‘ 进行,也就没法用 VS 自带的 UITest 框架(蛋疼), 所以只能开源的 FlaUI 框架来搞了...

1044
来自专栏IT技术精选文摘

阿里架构师带你深入浅出jvm

2062
来自专栏偏前端工程师的驿站

意译:《JVM Internals》

译者语                                  为加深对JVM的了解和日后查阅时更方便,于是对原文进行翻译。内容是建立在我对JVM的认...

2207
来自专栏专注 Java 基础分享

深入理解Struts2----类型转换

     之前的一系列文章主要介绍了有关Struts2的一些基本用法和部分的简单原理,但是始终没有介绍有关拦截器的相关内容,从本篇开始我们将从另一个角度去深入理...

2139
来自专栏java技术学习之道

Java设计模式——代理模式实现及原理

1173
来自专栏用户2442861的专栏

Python基础学习笔记之(二)(华工大神)

         Python中每一个.py脚本定义一个模块,所以我们可以在一个.py脚本中定义一个实现某个功能的函数或者脚本,这样其他的.py脚本就可以调用...

1054

扫码关注云+社区