【问题标题】:Reading multiple REF_CURSORs don't retrieve correct info with Hibernate读取多个 REF_CURSOR 不会使用 Hibernate 检索正确的信息
【发布时间】:2018-08-21 12:04:56
【问题描述】:

我使用的是 Hibernate 5.0.12 和 Oracle 12c。
从具有多个 REF_CURSOR 输出的存储过程调用,并且 getResultList 总是返回相同的数据,无论 getResultList 多少次叫做。

如何获得“下一个”结果列表?

定义:

@StoredProcedureParameter(mode = ParameterMode.REF_CURSOR, type =Class.class, name = "O_OUTPUT1"),
@StoredProcedureParameter(mode = ParameterMode.REF_CURSOR, type =Class.class, name = "O_OUTPUT2"),
query.execute();
query.getResultList();  // This will return list of values
query.getResultList(); // This returns THE SAME list of values

【问题讨论】:

  • Erez我也遇到了同样的问题,你解决了吗?
  • 2020 年了,这个问题还没有解决。最好避免使用 Hibernate 的 JPA 支持。

标签: java spring oracle jpa


【解决方案1】:

已知的休眠问题 (https://hibernate.atlassian.net/browse/HHH-10616)。 我升级到 5.2.15 并通过 getOutputParameterValue 使用基于索引的访问(请参阅https://hibernate.atlassian.net/browse/HHH-11863)。 使用 EclipseLink 也可以,但我想继续使用 Hibernate。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-26
    • 1970-01-01
    • 2018-07-16
    • 1970-01-01
    • 2021-09-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多