我尝试了下面的代码:
public class Abc {
private ArrayDescriptor arrayDesc;
void init() {
connection = //create connection
arrayDesc = ArrayDescriptor.createDescriptor("DBTYPE",connection);
}
void m1() {
conn1 = //create connection
ARRAY array_to_pass1 = new ARRAY( arrayDesc , conn1, idsArray1 );
}
void m2() {
conn2 = //create connection
ARRAY array_to_pass2 = new ARRAY( arrayDesc , conn2, idsArray2 );
}
}
这段代码给出了以下错误:
如何解决?
最佳答案
ArrayDescriptor已弃用。假设您的connection
对象的类型为OracleConnection,请尝试使用createOracleArray代替-如下所示:
public class Abc {
void init() {
connection = //create connection
}
void m1() {
conn1 = //create connection
array array_to_pass1 = conn1.createOracleArray(arrayDesc, idsArray1);
}
void m2() {
conn2 = //create connection
array array_to_pass2 = conn2.createOracleArray(arrayDesc, idsArray2);
}
}
注意:使用此方法,数组的类型将为
java.sql.Array
而不是oracle.sql.ARRAY
。关于java - 如何重用ArrayDescriptor?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48336475/