如何将java.sql.Array转换为整数数组



大家好,我遇到了这个简单的问题。

我正在尝试从我的Postgres数据库加载一个整数数组。

我的代码:

Array a = rs.getArray("my_field");
int[] b = (int[])a.getArray();

显示的异常:

java.lang.ClassCastException: class [Ljava.lang.Integer; cannot be cast to class [I ([Ljava.lang.Integer; and [I are in module java.base of loader 'bootstrap')

如何将java.sql.Array转换为int[]数组或arraylist?

您需要将其强制转换为Integer:的数组

Array a = rs.getArray("my_field");
Integer[] b = (Integer[])a.getArray();

请注意,如果数据库中的列是null,则a将是null,因此在调用a.getArray()之前应检查这一点。

最新更新