java - spring-data-jpa 没有从 oracle.jdbc.driver.forwardonlyreswultset 转换
问题描述
我正在连接到一个 oracle 数据库。我刚刚解决了依赖问题(在下面的 url 中有需要的代码,如存储库、实体等):
现在,当我调用存储库时,我遇到了强制转换问题。存储库向我发回了 ForwardOnlyResultSet 列表,但我无法映射我的结果。那是错误:
Cannot cast 'oracle.jdbc.driver.ForwardOnlyResultSet' to 'procedure.entity.PocRegions'
我的 oracle pl/sql 程序是:
PROCEDURE PRO_RETURN_REGION(
id_region IN POC_REGIONS.REGION_ID%TYPE,
o_cursor OUT SYS_REFCURSOR) is
BEGIN
--Opening the cursor to return matched rows
open o_cursor for
select *
from POC_REGIONS
where POC_REGIONS.REGION_ID = id_region;
END PRO_RETURN_REGION;
然后我尝试使用 jpa 调用和 spring-data-jpa 调用来实现调用:
StoredProcedureQuery query = entityManager.createStoredProcedureQuery( "POC_PKG_GEO.PRO_RETURN_REGION");
query.registerStoredProcedureParameter("id_region", BigDecimal.class, ParameterMode.IN);
query.registerStoredProcedureParameter("o_cursor", void.class, ParameterMode.REF_CURSOR);
query.setParameter("id_region", id);
query.execute();
//Contains a forwardonlyreswultset (jpa call)
Object res = query.getOutputParameterValue("o_cursor");
//Contains an array of 2 Object not mapped (jpa call)
List<PocRegions> resultList = query.getResultList();
//Contains a forwardonlyreswultset (spring-data-jpa call)
List<PocRegions> region = geoRegionRepo.getRegion(id);
我应该如何将检索到的值转换/映射到我的实体?
谢谢
解决方案
推荐阅读
- ios - 确定屏幕上水平 CollectionView 单元格的可见性百分比
- fluentd - 修改record_splitter返回的记录,或者在调用记录拆分器之前准备好
- c# - '填充无效,无法删除。'
- networking - Windows 主机操作系统似乎忽略了通过 linux sendto 使用原始套接字注入的数据包
- android - 将 android 模拟器与 gsm usb 调制解调器连接
- snowflake-cloud-data-platform - 检索变量值并插入另一个表
- android - 以编程方式设置时,无法删除附加到 NavGraph 中不同 FragmentManager 的 Fragment
- mysql - mysql问题,无法添加缺少索引的外键约束
- chrome-ux-report - CrUX 社区仪表板中的 FP 是什么意思?
- r - x * 比例错误:二元运算符的非数字参数