在spring存储过程中声明自定义对象的参数

时间:2014-05-15 09:46:42

标签: java sql spring stored-procedures ojdbc

我将以下存储过程与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对象映射输出数据的问题。

0 个答案:

没有答案