关于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规范下的调用流程
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:(反编译字节码对象获取类名)
PreparedManager类中的 executeUpdate() 和 executeQueryt() 方法的区别:
-
executeUpdate() 负责向数据库服务器传输的sql语句为:增,删除,改。返回的结果为int数据类型;
-
executeQuery() 负责向数据库服务器传输的sql语句为:查询语句,因此返回的是一个临时表,类型为ResultSet类型