本文共 2055 字,大约阅读时间需要 6 分钟。
按照
中的步骤 我们写出了如下代码代码演示
@Test public void testQuery1() { Connection conn = null; PreparedStatement ps = null; ResultSet resultSet = null; try { conn = JDBCUtils.getConnection(); String sql = "select id,name,email,birth from customers where id = ?"; ps = conn.prepareStatement(sql); ps.setObject(1, 1); //执行,并返回结果集 resultSet = ps.executeQuery(); //处理结果集 if(resultSet.next()){ //next():判断结果集的下一条是否有数据,如果有数据返回true,并指针下移;如果返回false,指针不会下移。 //获取当前这条数据的各个字段值 int id = resultSet.getInt(1); String name = resultSet.getString(2); String email = resultSet.getString(3); Date birth = resultSet.getDate(4); //方式一:// System.out.println("id = " + id + ",name = " + name + ",email = " + email + ",birth = " + birth); //方式二:// Object[] data = new Object[]{id,name,email,birth}; //方式三:将数据封装为一个对象(推荐) Customer customer = new Customer(id, name, email, birth); System.out.println(customer); } } catch (Exception e) { e.printStackTrace(); }finally{ //关闭资源 JDBCUtils.closeResource(conn, ps, resultSet); } }
补充:
java.sql 类 DriverManager 管理一组 JDBC 驱动程序的基本服务。
1:static Connection getConnection(String url, String user, String password) 试图建立到给定数据库 URL 的连接。
java.sql 接口 Connection 与特定数据库的连接(会话)。在连接上下文中执行 SQL 语句并返回结果。
1: PreparedStatement prepareStatement(String sql) 创建一个 PreparedStatement 对象来将参数化的 SQL 语句发送到数据库
java.sql 接口 PreparedStatement 表示预编译的 SQL 语句的对象。 SQL 语句被预编译并存储在 PreparedStatement 对象中。然后可以使用此对象多次高效地执行该语句。
1: void setObject(int parameterIndex, Object x) 使用给定对象设置指定参数的值。 2: boolean execute() 在此 PreparedStatement 对象中执行 SQL 语句,该语句可以是任何种类的 SQL 语句。 3: ResultSet executeQuery() 在此 PreparedStatement 对象中执行 SQL 查询,并返回该查询生成的 ResultSet 对象。
java.sql 接口 ResultSet
表示数据库结果集的数据表,通常通过执行查询数据库的语句生成。 1:ResultSet 对象具有指向其当前数据行的光标。最初,光标被置于第一行之前。next 方法将光标移动到下一行;因为该方法在 ResultSet 对象没有下一行时返回 false,所以可以在 while 循环中使用它来迭代结果集。 2:当生成 ResultSet 对象的 Statement 对象关闭、重新执行或用来从多个结果的序列获取下一个结果时,ResultSet 对象将自动关闭。 1:Object getObject(String columnLabel) 以 Java 编程语言中 Object 的形式获取此 ResultSet 对象的当前行中指定列的值。
转载地址:http://qmqq.baihongyu.com/