gpt4 book ai didi

java - JDBC 4.2 接口(interface) DriverAction 和 SQLType - 示例

转载 作者:行者123 更新时间:2023-11-30 07:08:31 25 4
gpt4 key购买 nike

我找不到 JDBC 4.2 的用法示例新界面 DriverActionSQLType .

谁能举个例子?

最佳答案

DriverAction

DriverAction仅与驱动程序实现相关,如果该驱动程序希望在驱动程序被注销时得到通知(例如,释放资源或执行其他清理操作),作为 JDBC 的最终用户,您与它无关。

如文档中所述,其目的是:

An interface that must be implemented when a Driver wants to be notified by DriverManager.

A DriverAction implementation is not intended to be used directly by applications. A JDBC Driver may choose to create its DriverAction implementation in a private class to avoid it being called directly.

(强调我的)

SQL类型

了解SQLType您首先需要查看枚举 JDBCType .这是一个枚举,它声明了与 java.sql.Types 中相同的 JDBC 类型。 ,但随后作为枚举对象。此枚举实现了 SQLType。添加接口(interface) SQLType 允许驱动程序实现为未在 JDBC 中定义的驱动程序或数据库特定类型添加类似的类型安全枚举。

它用于 - 例如 - 在 PreparedStatement.setObject(int, Object, SQLType) 中相当于PreparedStatement.setObject(int, Object, int) .

您可能会问,这添加了什么?首先,它对类型安全性更好。过去,驱动程序为可能与较新 JDBC 版本中添加的类型代码冲突的数据库特定类型分配类似 java.sql.Types 的整数。其次,当您提供不受支持的类型时,它可能允许更具可读性的诊断(例如,它可以显示 “不受支持的类型 XYZ(供应商:MyXYZDB)”“不受支持的类型 -1233”> 使用 getNamegetVendor ) 方法,最后(也是类型安全的一种形式)它防止用户在数据库品牌 Y 中错误地使用数据库品牌 X 的类型代码(或者至少:允许驱动程序检测这种不正确的用法)。

也就是说:我认为对于 JDBC 的大多数基本和常规用法,此接口(interface)并没有增加太多。

关于java - JDBC 4.2 接口(interface) DriverAction 和 SQLType - 示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23934260/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com