0

我正在尝试使用将我的数据库中的ActiveJDBCan 正确转换为 java 。我正确完成了提取,但返回的对象是. 我还没有找到一种方法来转换它。integer[]PostgreSQLequivalent int[]weblogic.jdbc.wrapper.Array_org_postgresql_jdbc_PgArray

我尝试了 2 种不同的方式来访问数据:

首先,使用标准record.findFirst("id = ?", id)格式。因为我的数据库中有多个模式,所以我将@Table符号添加到我的模型中。

其次,我尝试做一个record.findBySQL("select array from record where id = ?", id). 我也试过了array::integer[]

每次我取回 PgArray 类型。我一直在寻找一种将这种类型转换为其他类型以供使用的方法,但没有任何效果。

有没有办法做到这一点?我是否需要使用不同的数据检索方式ActiveJDBC

4

1 回答 1

0

JDBC定义java.sql.Array处理数组类型的列。PgArray只是 Postgres 的实现java.sql.Array

给定数组对象a,您可以调用(Integer[])a.getArray()Integer从 JDBC 数组对象中获取数组(如果 JDBC 驱动程序已决定返回Integer对象而不是其他对象Numbers)。提取值并转换为的辅助方法int[]可能是一个好主意。

不知道activejdbc是否支持在后台做这个转换。

于 2016-06-29T12:32:30.650 回答