JDBC之ResultSet接口

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Rookie_hh/article/details/82883979

ResultSet介绍

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

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

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

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

ResultSet executeQuery(String sql) throws SQLException 

  1. executeQuery是查询
  2. 函数的返回类型是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();
        }
    }
}

运行结果如下示:

猜你喜欢

转载自blog.csdn.net/Rookie_hh/article/details/82883979