jdbc的六大步骤

  • Post author:
  • Post category:其他




jdbc详解



1、jdbc的六步骤



一、注册驱动

Class.forName("com.mysql.cj.jdbc.Driver");//类加载注册



二、获取连接

 conn = DriverManager.getConnection  ("jdbc:mysql://localhost:3306/数据库名?useUnicode=true&characterEncoding=utf8&useSSL=false","用户名","密码")



三、获取数据库操作对象

 stat = conn.createStatement();



四、执行sql语句

  String sql = "select first_name,salary,job_id from employees where salary>12000";



五、处理查询结果集

 rs = stat.executeQuery(sql);
 while (rs.next()){
                String name = rs.getString("first_name");
                String money = rs.getString("salary");
                String id = rs.getString("job_id");
                System.out.println(name + "," + money + "," + id);
            }



六、释放资源

 if(rs != null){
                try {
                    rs.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            if(stat != null){
                try {
                    stat.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            if(conn != null){
                try {
                    conn.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }



2、JDBC的5大对象

请添加图片描述

首先我们想要通过代码连接到数据库,一般得有驱动的东西,其中DriverManager为驱动管理对象,可是我们从上面的代码并没有看到通过DriverManager这个东西来注册驱动啊,只是有了一句 Class.forName(“com.mysql.jdbc.Driver”);其实这句话就已经注册了,这句话的意思就是说加载到了内存,加载到了内存说明了一个什么问题呢,那就是静态代码块中的代码会一同跟着执行,接下来在源码com.mysql.jdbc.Driver类中存在静态代码块,如下:

 static {
		try {
			java.sql.DriverManager.registerDriver(new Driver());
			} catch (SQLException E) {
			 throw new RuntimeException("Can't register driver!");
			 }
		}

大家看到了DriverManager.registerDriver这句代码了吧,这就是在注册驱动!应用程序就知道了要用mysql数据库驱动的jar包。

Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/myemployees?useUnicode=true&characterEncoding=utf8&useSSL=false","root","123456");

这句话得到了一个数据库的连接对象conn,此时这个对象有一个createStatement()的方法,将一个能够执行sql对象的statement对象创造出来,负责将要执行的 SQL 语句提交到数据库,这样数据库就会执行发送过来的SQL语句。

ResultSet接口用来接收 select 语句返回的查询结果的,其实质类似于集合。结果集是一个二维的表格,有行有列,其中的next()方法是判断下一行是否为空,如果不为空,则使用getxxx()方法,接收数据。



版权声明:本文为gbdlacxzdmg原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。