JavaWeb jdbc—ResultSet对象

时间:2024-04-09 11:58:23

Result对象主要用于存储结果集,可以通过next()方法可以由前向后逐个获取结果集中的数据

在web—chapter09中的cn.itheima.jdbc中创建example03类,在该类中使用使用ResultSet对象取出指定数据的信息

package cn.itheima.jdbc.example;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class example03 {

	public static void main(String[] args) {
		Connection conn = null;
		Statement stmt =null;
		try {
			//注册驱动
			Class.forName("com.mysql.jdbc.Driver");
			String url = "jdbc:mysql://localhost:3306/jdbc";
			String username = "root";
			String password = "itcast";
			//获得连接
			conn = DriverManager.getConnection(url, username, password);
			String sql = "select * from users";
			//创建statement对象并设置常量    其中第一个参数表示结果集可滚动,第二个参数表示以只读方式打开结果集
			stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
			//创建结果集对象
			ResultSet rs = stmt.executeQuery(sql);
			
			System.out.println("第二条数据的名字:");
			rs.absolute(2);  //将结果集滚动到第二条数据
			System.out.println(rs.getString("name"));
			System.out.println("第四天数据的名字:");
			rs.afterLast();  //将结果集滚动到最后一条之后
			rs.previous();   //将结果集向前滚动一条
			System.out.println(rs.getString("name"));
			System.out.println("第一条数据的名字:");
			rs.beforeFirst(); //将结果集滚动到第一条记录之前
			rs.next();         //将结果集向后滚动一条
			System.out.println(rs.getString("name"));
			
		}catch (Exception e) {
			e.printStackTrace();
		}finally {
			if(stmt!=null) {
				try {
					stmt.close();
				}catch (SQLException e) {
					e.printStackTrace();
				}
				stmt= null;
			}
			if(conn!=null) {
				try {
					conn.close();
				}catch (SQLException e) {
					e.printStackTrace();
				}
				conn= null;
			}
		}

	}

}

之行之后的结果如下:

JavaWeb jdbc—ResultSet对象

比对数据库文件:

JavaWeb jdbc—ResultSet对象