ResultSet介绍

对数据库的查询操作,一般需要返回查询结果。在程序中,JDBC为我们提供了ResultSet接口来专门处理查询结果集。

由于ResultSet是JDBC的一个接口,先来简单了解一下JDBC:

JDBC:Java Database Connection,表示数据库连接(任何数据库都支持JDBC的连接),是一个独立于特定数据库管理系统、通用的sql数据库存取和操作的公共接口。它是java中专门提供的一组用于操作数据库的标准,所有的数据库生产商如果要是想为java提供支持,则必须支持此标准。所以说JDBC实际上是一套访问数据库的接口。

通过以下方法执行一个查询操作:

ResultSet executeQuery(String sql) throws SQLException

executeQuery是查询
函数的返回类型是ResultSet
实际上查询的数据并不在ResultSet里面,依然是在数据库里,ResultSet中的next()方法类似于一个指针,指向查询的结果,然后不断遍历以获取数据库中的结果。所以这就要求连接不能断开。

JDBC常用的操作类/接口

Connection接口

Statement接口

PreapredStatement接口

ResultSet接口

CallableStatement接口

DriverManager类

ResultSet接口常用的方法

boolean next()     遍历时,判断是否有下一个结果

int getInt(String columnLabel)

int getInt(int columnIndex)

Date getDate(String columnLabel)

Date getDate(int columnIndex)

String getString(String columnLabel)

String getString(int columnIndex)

ResultSet接口实现查询操作

步骤如下:

1、加载数据库驱动程序:Class.forName(驱动程序类)

2、通过用户名密码和连接地址获取数据库连接对象:

DriverManager.getConnection(连接地址,用户名,密码)

3、构造查询SQL语句

4、创建Statement实例:

Statement stmt = conn.createStatement()

5、执行查询SQL语句,并返回结果:

ResultSet rs = stmt.executeQuery(sql)

6、处理结果

7、关闭连接:rs.close()、stmt.close()、conn.close()

案例分析:

package com.inspur.servlet;
 
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
 
public class NiHao {
 
 
    //数据库连接地址
    private final static String URL = "jdbc:mysql://10.10.4.92:3306/jctest?characterEncoding=utf8&useSSL=true";
    //用户名
    public final static String USERNAME = "jctest";
    //密码
    public final static String PASSWORD = "jctest";
    //加载的驱动程序类(这个类就在我们导入的jar包中)
    public final static String DRIVER = "com.mysql.jdbc.Driver";
    
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        query();
 
    }
    
    
    //方法:查询操作
    public static void query(){
        try {
            //1.加载数据库驱动程序
            Class.forName(DRIVER);
            //2.通过用户名密码和连接地址url获取数据库连接对象
            Connection conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
            //3.构造插入的SQL语句
            String sql = "select 姓名 from Mac_Name";
            //4.创建Statement实例
            Statement state = conn.createStatement();
            //5.执行查询并返回结果集
            ResultSet rs = state.executeQuery(sql);
            //6.处理结果
            while(rs.next()){  //通过next来索引:判断是否有下一个记录
                String name = rs.getString("姓名");
                
                System.out.println("name="+name);
            }
            //7.关闭连接
            rs.close();
            state.close();
            conn.close();            
            
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

运行结果如下示:

ResultSet接口相关推荐

  1. resultset mysql_MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)...

    [声明] 欢迎转载,但请保留文章原始出处→_→ [正文] 一.ResultSet接口的介绍: 对数据库的查询操作,一般需要返回查询结果,在程序中,JDBC为我们提供了ResultSet接口来专门处理查 ...

  2. MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)...

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  3. Jdbc系列四:ResultSet接口

    一.ResultSet  通过调用 Statement 对象的 excuteQuery() 方法创建该对象.  ResultSet 对象以逻辑表格的形式封装了执行数据库操作的结果集,ResultSet ...

  4. java中result方法_java.sql.resultSet接口中有很多方法的实现

    接口是很重要的面向对象方式,继承接口的类不用全部实现定义的接口,可以这么说,我定义了好多接口,某个类可以这么实现这个接口,到另一个类你又想那么实现接口,都是可以的. 或者定义完接口不想管他都可以,虽然 ...

  5. java mysql resultset_Java数据库——ResultSet接口

    使用SQL中的SELECT语句可以查询出数据库的全部结果,在JDBC的操作中数据库的所有查询记录将使用ResultSet进行接收,并使用ResultSet显示内容. 从user表中查询数据 //=== ...

  6. java resultset wasnull_Java Spring – RowMapper ResultSet – 整数/空值

    我有一个 Java SE 8 Spring 4.1.6-RELEASE应用程序,我正在实现 org.springframework.jdbc.core.RowMapper接口,我对其 T mapRow ...

  7. JDBC—01—JDBC简介;JDBC常用接口与类;

    一. JDBC 简介 1 什么是 JDBC JDBC(Java DataBase Connectivity)java 数据库连接 是 JavaEE 平台下的技术规范 定义了在 Java 语言中连接数据 ...

  8. ResultSet用法集锦 (转)

    转:http://soft-development.iteye.com/blog/1420323 结果集(ResultSet)是数据中查询结果返回的一种对象,可以说结果集是一个存储查询结果的对象,但是 ...

  9. java中接口什么时候用_我什么时候应该在java中使用接口?

    在Java中精确使用接口的一个很好的例子将是理想的,适用于任何特定的规则. 看看丹以前所有的问题,他似乎只是逐字逐句地张贴家庭作业/考试问题. 令人惊讶的是,这些不是考试题或其他-今天才找到这个网站, ...

最新文章

  1. 【Animations】使用缩放动画放大视图(7)
  2. ActiveMQ实现负载均衡+高可用部署方案
  3. jquery数组(排序)
  4. linux开机磁盘检查启动慢,Ubuntu 7.10开机启动慢的完美解决
  5. 浅谈html的语义化和一些简单优化,html标签语义化
  6. 枚举算法:求解不等式
  7. cup first world_LOONCUP – The world's first SMART menstrual cup.
  8. Http GET、Post方式的请求总结
  9. virtualmin修改php.ini,virtualmin安装和配置使用
  10. Windows核心编程学习九:利用内核对象进行线程同步
  11. 《神探tcpdump第八招》-linux命令五分钟系列之四十二
  12. 淘宝七天自动确认收货,让你设计,可以怎么实现?(附源码)
  13. linux基础-- 桌面系统如何切换命令窗口
  14. laravel5.8整合JWT
  15. CTF Crypto/MISC 在线工具网站
  16. 第几天(2018蓝桥杯-第一题)
  17. 2016年linux认证考试,2016年Linux认证考试模拟练习及答案
  18. Moveit!入门——古月居机械臂开发笔记(二)
  19. java加密工作模式None_simple1234
  20. 智能售货机系统帝可得

热门文章

  1. ManageEngine:疫无情,莫等闲。线上学习特权密码管理
  2. stm32mp157 wm8960音频驱动调试笔记
  3. 基于旅行商模型的碎纸片拼接复原
  4. JavaScript中改变鼠标指针样式的方法
  5. CSDN日报20170525 ——《狗蛋的寻亲之路,结识嵌入式世界的那只狗》
  6. 自恢复保险丝电流电压的选择有什么要求?
  7. Springboot 2.x 整合jOOQ实现CRUD
  8. xss靶场练习(二)之xss小游戏
  9. 如何解决: ImportError: cannot import name ‘Markup‘ from ‘jinja2‘
  10. 修改 elementui nav 下拉菜单内部样式