SYS.ODCIVARCHAR2LIST 的字段类型?

Field type for SYS.ODCIVARCHAR2LIST?

需要有关存储过程和spring批处理配置的帮助。

PROCEDURE MY_DATA(
  MY_DATA_1 IN VARCHAR2,      
  MY_DATA_2 IN NUMBER,
  MY_DATA_3 IN SYS.ODCIVARCHAR2LIST);

在我的XML

<bean class="org.springframework.jdbc.core.SqlParameter">
     <constructor-arg index="0" value="MY_DATA_1"/>
     <constructor-arg index="1">
         <util:constant static-field="java.sql.Types.VARCHAR"/>
     </constructor-arg>
</bean>

<bean class="org.springframework.jdbc.core.SqlParameter">
     <constructor-arg index="0" value="MY_DATA_2"/>
     <constructor-arg index="1">
          <util:constant static-field="java.sql.Types.NUMERIC"/>
     </constructor-arg>
</bean>  

<bean class="org.springframework.jdbc.core.SqlParameter">
     <constructor-arg index="0" value="MY_DATA_2"/>
     <constructor-arg index="1">
           <util:constant static-field="**--**"/>
     </constructor-arg>
</bean>     

我们必须为 SYS.ODCIVARCHAR2LIST 提供的 static-field 类型名称是什么?我试过给 java.sql.Types.VARCHAR、java.sql.Types.VARCHAR2 但没有成功。

在 Oracle 中:

SQL> desc sys.odcivarchar2list
 Name             Null Type                      
 ---------------- ---- ------------------------- 
 ODCIVARCHAR2LIST      VARYING ARRAY OF VARCHAR2 

所以我会尝试 java.sql.Types.ARRAY。如果这不起作用,请尝试 Oracle 特定的 example here,它利用了 Oracle 的 ArrayDescriptor class.