关于JDBC

关于JDBC

JDBC :java数据库连接,是Java工程师定义的一种连接数据库的规范,即接口

接口的作用:

  • 指定规则

  • 降低Java工程中类文件之间的耦合度,从而降低维护成本【设计原则】

JAVAEE 和JAVASE规范的区别:

JAVASE :

指的是Java类在单独执行,单独处理业务时需要遵循的语法规则。如继承,访问权限,接口实现,控制语句,标识符名命等

JAVAEE:Java在进行商业开发时需遵守的开发规则

  • 在商业开发过程中,往往需要Java类与不同服务器进行沟通来解决当前业务,由于在商业开发过程中,Java需要与13中不同的服务器进行沟通,因此sun公司根据13中不同的服务器特征制定13套接口,这13套接口统称为JAVAEE规范。

  • sun公司只是负责提供接口,不负责提供接口实现类,接口实现类由不同的服务器厂商提供,服务器厂商将完成接口的不同实现类以jar包的形式封装

  • 程序员通过jar包得到接口的实现类,从而实现与指定服务器之间的交流。

     

JDBC规范
  • JAVAEE 中的一种规范

  • 指定Java类与关系型数据库服务器【Mysql,Oracle,SqlServer】之间沟通交流

  • JDBC 规范提供接口存在JDKJAR中。java.sql包

  • JDBC规范接口实现类由由不同关系型数据库服务器厂商以jar包的形式提供

JDBC规范下的调用流程

image-20211006100128971

 

image-20211006101308724

JDBC 规范的调用流程:JDBC规范中的接口都是在JKD中的java.sql包下

  • 在JVM中注册数据库服务器驱动 DriverManager.registerDriver(driver);

  • 创建Java工程与数据库服务器之间的连接通道,并驱动管理器管理该通道 Connection con=DriverManager.getConnection(url,root,password)

  • 在数据库服务器与JVM之间的通道上创建一个运载交流数据 的通道,用于传输指定的SQL命令: PreparedStatement=con.PreparedStatement(sql命令)

  • 将sql命令传输到MySQL服务器中,并返回处理结果; result=ps.executeUpdate(sql命令);

  • 最后判断ps和con两个工具是否还持有相关资源,若是,则调用.close()销毁。

注册数据库服务器驱动的两种方式(第二种较为常用)

  • 方式1:

Driver driver=new com.mysql.jdbc.Driver();

DriverManager.registerDriver(driver)

  • 方式2:(反编译字节码对象获取类名)

Class.forName("com.mysql.jdbc.Driver");

PreparedManager类中的 executeUpdate() 和 executeQueryt() 方法的区别:

  • executeUpdate() 负责向数据库服务器传输的sql语句为:增,删除,改。返回的结果为int数据类型;

  • executeQuery() 负责向数据库服务器传输的sql语句为:查询语句,因此返回的是一个临时表,类型为ResultSet类型

posted @ 2021-10-06 20:39  安妍  阅读(37)  评论(0)    收藏  举报