JDBC – 类型 4 驱动程序
让我们先了解一下 JDBC 和 ODBC 的封面概述,以便更好地了解什么是类型 4 驱动程序。 JDBC 驱动程序使Java应用程序能够与我们可以从中获取或存储数据的数据库进行交互。 JDBC 驱动程序类似于 ODBC 驱动程序。 JDBC 类包含在Java包Java.sql 中,而 javax.sql.JDBC 有助于
- 连接到数据源,如数据库。
- 向数据库发送查询和更新语句
- 检索和处理从数据库收到的结果以回答您的查询
JDK 附带的Java.sql 包包含各种定义了行为的类,它们的实际实现是在第三方驱动程序中完成的。第三方供应商在他们的数据库驱动程序中实现了Java.sql.Driver 接口。
ODBC 基于设备驱动程序模型,其中驱动程序封装了将标准命令和函数集转换为底层系统所需的特定调用所需的逻辑。
JDBC 驱动程序类型用于对用于连接数据库的技术进行分类。
- Type -1 桥接驱动器
- 类型 -2 本机 API
- 类型 -3 网络协议
- 类型 -4 本机协议
Type-4 驱动程序也称为本机协议驱动程序。该驱动程序直接与数据库交互。它不需要任何本地数据库库,这就是为什么它也被称为瘦驱动程序。
- 不需要任何本机库和中间件服务器,因此无需客户端或服务器端安装。
- 它完全用Java语言编写,因此它们是可移植的驱动程序。
Type-4 JDBC driver also known as ‘thin driver’ or Direct to Database Pure Java Driver. It is portable, the fastest among all JDBC drivers and database dependent.
瘦驱动程序将 JDBC 调用直接转换为供应商特定的数据库协议。它完全用Java语言编写。此外,它是一个独立于平台的驱动程序,但它依赖于数据库,因为它使用本机协议(协议只能在特定服务器之间建立连接)。
瘦驱动程序安装在客户端的Java虚拟机中。
- 不需要客户端或服务器上的特殊软件。不使用翻译或中间件层,提高了性能。
- 平台无关(完全用Java编码)
- 无需安装本机库。
- 它使用特定于数据库服务器的协议使其安全。
- 有助于调试,因为 JVM 可以管理应用程序到数据库连接的所有方面。
- 它使用特定于数据库的协议,并且依赖于 DBMS 供应商
- 可扩展
- 高级系统管理
- 出众的表演
- 高级Java功能集
- 提供比 JDBC/ODBC Bridge 和 Type 2 驱动程序明显更好的性能
如果您正在访问一种类型的数据库,例如 Oracle、Sybase 或 IBM,则首选的驱动程序类型是 type-4。
支持 Unicode
可以在任何带有 JDBC 的操作系统平台上开发多语言应用程序,使用 Type 4 JDBC 驱动程序访问支持 Unicode 和非 Unicode 的数据库。在内部, Java应用程序对字符串数据使用 UTF-16 Unicode 编码。获取数据时,Type 4 JDBC 驱动程序会自动执行从数据库使用的字符编码到 UTF-16 的转换。同样,在数据库中插入或更新数据时,驱动程序会自动将 UTF-16 编码转换为数据库使用的字符编码。
让我们讨论 4 类 JDBC 驱动程序中的错误处理,因为 4 类 JDBC 驱动程序报告通过抛出 SQLExceptions 向调用应用程序抛出错误。这是因为每个 SQLException 都包含:
- 本机错误代码
- 错误原因描述
- 包含 XOPEN SQLstate 的字符串