JDBC本质:
其实是官方(sun公司)定义的一套操作所有关系性数据库的规则,即接口;
各个数据库厂商去实现这套接口,提供数据库驱动jar包;
我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。
写出一个自己捕获异常,让资源可以完全释放的代码:
import java.sql.*; public class JDBCDemo1 { public static void main(String[] args) { //声明好资源 Connection conn = null; Statement stmt = null; ResultSet rs = null; try { //1.注册驱动 Class.forName("com.mysql.jdbc.Driver"); //2.获取连接数据库对象 Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/java","root","root"); //3.准备好sql语句 String sql = "select * from student"; //4.获取执行sql的对象 stmt = conn.createStatement(); //5.执行sql rs = stmt.executeQuery(sql); //6.处理结果 while (rs.next()){ int s_id = rs.getInt("s_id"); String s_name = rs.getString("s_name"); System.out.println(s_id+" "+s_name); } } catch (Exception e) { e.printStackTrace(); }finally { //7.在finally代码块中释放资源 if(rs !=null){ try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } } if(stmt !=null){ try { stmt.close(); } catch (SQLException e) { e.printStackTrace(); } } if(conn !=null){ try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } } }
结果:
1 Evan 2 Tom 3 Tony