我将以下存储过程与IN OUT参数作为自定义对象。我想获取从过程返回的数据,并使用spring存储过程将其映射到java对象。
存储过程参数:
程序get_prev_record( p_curr_rec_i SCRUM.employee_ot, p_prev_rec_io IN OUT SCRUM.employee_ot)
对象类型声明:
创建或替换类型CORE.EMPLOYEE_OT作为对象(SCRUM.EMPLOYEE_ID NUMBER(18),SCRUM.EMPLOYEE_NAME VARCHAR2(30));
我使用经典存储过程定义以下参数。
Spring存储过程参数:
调用declareParameter(新 的SqlParameter( “p_curr_rec_i”,OracleTypes.STRUCT, “SCRUM.EMPLOYEE_OT”));
declareParameter(new SqlOutParameter(“p_prev_rec_io”,OracleTypes.STRUCT,“SCRUM.EMPLOYEE_OT”,new SqlReturnStruct(Employee.class)));
但是输出没有从DB返回任何值。当我将SqlOutParameter更改为SqlInOutParameter时,我得到以下错误。
“提供了1个参数,但在类”
中声明了2个参数任何人都可以帮我解决使用java对象映射输出数据的问题。