Spring plsql数组输入和输出参数,无需使用jdbctemplate更改数据库

Spring plsql数组输入和输出参数,无需使用jdbctemplate更改数据库,spring,jdbc,plsql,Spring,Jdbc,Plsql,我正在为数据库使用jdbctemplate,需要将字符串和数字数组传递给一个匿名过程,不允许更改数据库 不确定您的plsql块,但您可以使用jdbc遵循这种方法。试着看看这是否有效,并希望这将是有益的,否则提供反馈 String myArray[] = { "black", "blue", "orange", "red" }; ArrayDescriptor des = ArrayDescriptor.createDescriptor("ARRAY_TYPE",

我正在为数据库使用jdbctemplate,需要将字符串和数字数组传递给一个匿名过程,不允许更改数据库

不确定您的plsql块,但您可以使用jdbc遵循这种方法。试着看看这是否有效,并希望这将是有益的,否则提供反馈

    String myArray[] = { "black", "blue", "orange", "red" };
    ArrayDescriptor des = 
        ArrayDescriptor.createDescriptor("ARRAY_TYPE", conn);
    // presume that you have created ARRAY_TYPE in your schema
    ARRAY array = new ARRAY(des, conn, myArray);
    CallableStatement cst = conn.prepareCall("call yourproc(?,?)");
    cst.setArray(1, array);
    cst.registerOutParameter(2, 
                             Types.INTEGER); // presume that second param is out
    cst.execute();