spring-data-jpa 不从 oracle.jdbc.driver.forwardonlyreswultset 进行转换

2024-04-16

我正在连接到 oracle 数据库。我刚刚解决了依赖问题(在以下网址中有所需的代码,如存储库、实体等):

spring-data-jpa 1.11.16 带游标的存储过程 https://stackoverflow.com/questions/53723913/spring-data-jpa-1-11-16-stored-procedure-with-cursor/53724604?noredirect=1#comment94307213_53724604

现在,当我调用存储库时,我遇到了强制转换异常的问题。 存储库向我发回了仅转发结果集的列表,但我无法映射我的结​​果。 这就是错误:

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);

我应该如何将检索到的值转换/映射到我的实体?

谢谢


None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

spring-data-jpa 不从 oracle.jdbc.driver.forwardonlyreswultset 进行转换 的相关文章

  • 通过 ant 构建脚本将命令行参数传递给 Java

    运行以下命令时 ant targetname Dk1 v1 Dk2 v2 我想要将命令行参数传递给java like java whatever Dk1 v1 Dk2 v2 我需要从 Java 代码访问这些参数System getPrope
  • 当线程无法访问所有已用堆时查找 Java 内存泄漏

    我正在研究基于 Java 的大型系统中潜在的内存泄漏 或至少是内存浪费 JVM 运行时的最大堆大小为 5 GB 2 3GB 堆使用量是应用程序的预期基准 可能会有更高的峰值 在我正在调查的过载场景中 堆被填满 使用 Eclipse Memo
  • 添加样式后如何重置回默认CSS?

    基本上 我通过添加如下样式类来更改 javafx 中文本字段的 css textfield getStyleClass add textfieldstyle 但后来我希望能够将其恢复到原来的样子 但由于本例中的原始外观是 JavaFX 的默
  • Spring MVC 配置启用

    我正在从头开始建立一个项目 目前我正在配置Spring MVC 4 1 5使用java配置 整个应用程序正在 tomcat gradle 插件上运行 有人可以解释一下为什么我需要对班级进行以下调用DefaultServletHandlerC
  • java中数字字符串间隔排序

    我正在与一些人一起上一个人课 其中有姓名 年龄范围等详细信息 年龄区间为 0 5 6 10 11 30 31 45 46 50 50 100 100 110 我正在上 Person 课name ageBand字符串间隔及其参数化构造函数 g
  • Java 8 列表到带有总和的 EnumMap

    我有以下课程 public class Mark private Long id private Student student private Integer value 0 private Subject subject public
  • Java switch case 抛出 nullPointer 异常

    我有一个枚举声明如下 public enum Status REQ URL1 NOT URL2 GET URL3 String getURL Status String getURL this getURL getURL 我班上的一个领域
  • 将分区扩展到另一级

    根据下图来自春季批量文档 http docs spring io spring batch reference html scalability html partitioning 主步骤被划分为六个从步骤 它们是主步骤的相同副本 我的问题
  • TestNG 与 DataProvider 并行执行

    我有一个从数据提供者接收数据的测试 我希望此测试与数据提供者的不同值并行运行 我尝试了这样的方法 public class IndependentTest Test dataProvider dp1 threadPoolSize 3 inv
  • Spring MVC - 从 JSP 提交对象

    我有一个显示客户列表的 JSP ArrayList searchResults 我希望能够选择其中之一 并将其 提交给 Spring MVC 控制器 但是 我似乎无法传递所选对象 只能传递它的属性 例如 customerId 我真的需要传递
  • 如何在 Spring Boot 中跳过将某些 @Entity 类创建为 h2(内存中)数据库中的表?

    我正在尝试构建一个使用 2 个数据源的 Spring Boot 应用程序 我现在的主要数据库是内存数据库 仅用于测试目的 其中的表是在我创建的 sql 文件的帮助下填充的 另一个数据库 oracledb 具有已填充的表 我想实现什么目标 我
  • 在 Eclipse 中编写链接特定行的注释

    我正在 Java 中使用 Eclipse 并且处理很长的类 我需要这样的功能 在方法的顶部注释中 例如 有一个由该方法执行的操作列表 对于列出的每个操作 我想将注释的一部分 超链接 到相关代码的特定行 然后使用 Ctrl Click 到该行
  • Java如何处理IF语句和效率

    我只是好奇 Java 实际是如何工作的if声明 注意 当我在下面说 组件 时 我指的是语句检查的各个部分 例如a b c 哪个在计算方面更有效 if a b c do stuff or if a if b if c do stuff 我之所
  • 序列化/反序列化 LinkedHashMap (android) java

    所以我想将 LinkedHashMap 传递给意图 SEND THE MAP Intent singlechannel new Intent getBaseContext singlechannel class singlechannel
  • 使用 Java 重新启动 Tomcat

    我需要从 Java 代码重新启动 tomcat 例如 如果某个查询在一段时间内没有执行 那么它将自动重新启动 tomcat 我已经尝试了以下关闭和启动代码 但是当我们关闭tomcat时 java代码将不会运行并且tomcat不会启动 注意
  • “该选择不能在任何服务器上运行”

    我一直在 Eclipse 中开发一个动态 Web 项目 我收到这个错误 该选择不能在任何服务器上运行 早些时候它工作得很好 但现在我收到了这个错误 我删除了服务器并再次添加 Project gt Right Click gt Propert
  • 为什么这个 eclipse 错误显示以及它的解决方案应该是什么

    缺少库 xdoclet 1 2 1 jar 选择 XDoclet 的主目录 1 2 1 为什么这个 eclipse 错误显示以及它的解决方案应该是什么alz 这可能是因为该 jar 没有添加到您的项目构建路径中 请按照以下步骤操作 Righ
  • 如何处理MaxUploadSizeExceededException

    MaxUploadSizeExceededException当我上传的文件大小超过允许的最大值时 会出现异常 我想在出现此异常时显示错误消息 如验证错误消息 我该如何处理这个异常 以便在 Spring 3 中执行类似的操作 Thanks 这
  • 缓冲区溢出(与)缓冲区溢出(与)堆栈溢出[重复]

    这个问题在这里已经有答案了 可能的重复 堆栈溢出和缓冲区溢出有什么区别 https stackoverflow com questions 1120575 what is the difference between a stack ove
  • 使用 JPA2/Hibernate 保留 java.time.Instant (JDK8)

    JPA 和 Hibernate 目前都不支持 JDK8 中 JSR 310 带来的新日期 时间类 JPAticket https java net jira browse JPA SPEC 63 休眠ticket https hiberna

随机推荐