gpt4 book ai didi

java - oracle.sql.ARRAY 和 oracle.sql.ArrayDescriptor 的通用实现

转载 作者:行者123 更新时间:2023-11-30 04:40:05 25 4
gpt4 key购买 nike

我正在尝试从我的持久层中抽象出一些实现细节。就目前情况而言,我有两个函数,一个用于创建 ARRAY ,另一个用于创建 ArrayDescriptor 。我目前正在利用 HSQL 编写测试,并不断遇到一个问题,其中从 JDBCConnection 转换为 OracleConnection 时出现 ClassCastException。这是由以下原因引起的:createDescriptor 。有没有办法删除 Oracle 细节并以通用方式使用 ARRAY 和 ArrayDescriptor 的概念?我目前还没有接近我的源代码,所以我会凭内存记忆。

最佳答案

如果您使用的是 JDBC 4/Java 6 或更高版本,您可以尝试使用 JDBC 数组创建方法,

Connection.createArrayOf()

根据内存,Oracle 特定的 API 为您提供了更多选项和灵 active ,但如果您想使用 Oracle 以外的其他数据库作为数据库,那么使用 JDBC API 实际上是唯一的选择。

<小时/>

编辑:根据this documentation ,Oracle JDBC 驱动程序不支持 createArrayOf()。因此,您可能做的最好的事情就是在代码中进行 instanceof 检查,如果检测到 OracleConnection,则使用 Oracle 特定的 API,否则使用 Connection.createArrayOf()。

关于java - oracle.sql.ARRAY 和 oracle.sql.ArrayDescriptor 的通用实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12502912/

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