JDBC 常见面试题集锦(一)
Published: 18 Mar 2014 Category: JDBC
什么是 JDBC,在什么时候会用到它?
JDBC 的全称是 Java DataBase Connection,也就是 Java 数据库连接,我们
可以用它来操作关系型数据库。JDBC 接口及相关类在 java.sql 包和 javax.sql
包 里。我们可以用它来连接数据库,执行 SQL 查询,存储过程,并处理返回
的结果。
JDBC 接口让 Java 程序和 JDBC 驱动实现了松耦合,使得切换不同的数据库变
得更加简单。
有哪些不同类型的 JDBC 驱动?
有四类 JDBC 驱动。和数据库进行交互的 Java 程序分成两个部分,一部分是
JDBC 的 API,实际工作的驱动则是另一部分。
A JDBC-ODBC Bridge plus ODBC Driver(类型 1):它使用 ODBC 驱动
连接数据库。需要安装 ODBC 以便连接数据库,正因为这样,这种方式现在已
经基本淘汰了。
B Native API partly Java technology-enabled driver(类型 2):这种驱
动把 JDBC 调用适配成数据库的本地接口的调用。
C Pure Java Driver for Database Middleware(类型 3):这个驱动把
JDBC 调用转发给中间件服务器,由它去和不同的数据库进行连接。用这种类
型的驱动需要部署中间件服务器。这 种方式增加了额外的网络调用,导致性能
变差,因此很少使用。
D Direct-to-Database Pure Java Driver(类型 4):这个驱动把 JDBC 转
化成数据库使用的网络协议。这种方案最简单,也适合通过网络连接数据库。
不过使用这种方式的话,需要根据不 同数据库选用特定的驱动程序,比如
OJDBC 是 Oracle 开发的 Oracle 数据库的驱动,而 MySQL Connector/J 是
MySQL 数据库的驱动。
JDBC 是如何实现 Java 程序和 JDBC 驱动的松耦合的?
JDBC API 使用 Java 的反射机制来实现 Java 程序和 JDBC 驱动的松耦合。随便
看一个简单的 JDBC 示例,你会发现所有操作都是通过 JDBC 接口完成的,而