【发布时间】:2015-06-29 13:19:16
【问题描述】:
在 Oracle 中有一个存储过程,我需要使用 Spring Data JPA 从 Java 中的服务调用它。
在sql developer中测试了该过程,发现运行正常。它需要大约 6 个 IN 参数并返回一个 ref_cursor。
请帮助我知道如何执行此操作。
程序:
create or replace PROCEDURE GET_CONF(PROD_NAME IN VARCHAR2, DERIVATIVE IN VARCHAR2, PHY_SEC_SIZE IN VARCHAR2, PROD_CACH IN VARCHAR2, CAPACITY IN VARCHAR2,ENC_TYPE IN VARCHAR2, INTER_VAL IN VARCHAR2, HEADS IN VARCHAR2,DISCS IN VARCHAR2, AREALDENSITY IN VARCHAR2, DESIGNSITE IN VARCHAR2, RSLT OUT SYS_REFCURSOR) AS ....
这里前两个参数是screen中的必填字段,所以肯定是有价值的。但其他字段是可选的。
Spring数据仓库方法如下:
@Procedure(procedureName = "get_conf")
List<Object[]> testjpa(String prodName, String derivative, String phySize,
String prodCache, String capacity, String encType,
String interfaceVal, String heads, String discs,
String arealDensity, String desingSite);
我尝试将返回类型指定为 List 和 List。但没有任何结果。
如果我只返回一个值,一切正常。当我返回多个值和多行时出现问题。
我得到的错误如下
我试过this,但没有成功。
【问题讨论】:
-
请贴出你试过的代码和错误
-
使用错误和 Spring 数据存储库调用编辑
-
@AnithaRamaiah 你应该粘贴完整的堆栈跟踪。目前还不清楚是什么导致了异常。
-
另外,请提供@NamedStoredProcedureQuery...
标签: spring-data