【问题标题】:MySQL: Call stored procedure (returning data from multiple tables) from hibernateMySQL:从休眠中调用存储过程(从多个表返回数据)
【发布时间】:2012-07-15 19:59:52
【问题描述】:

我在 mysql 中有一个存储过程,它接收多个参数。 现在,我想在 java 中从休眠中调用它。 另外,我想实现延迟加载,例如,如果数据库中有 50,000 条记录。该过程不会立即返回所有记录,而是仅在用户需要时返回。 我正在使用 primefaces 数据表来显示数据。

注意 我没有数据库表的所有列,根据用户将提供给存储过程的参数,我只需要 5 到 6 个 db 列。为此,我创建了 POJO,其列表将保存日期。

总结

  1. 从休眠中调用存储过程并将多个参数传递给 它。
  2. 实现延迟加载以提高效率 申请。

更新好的,我使用 CallableStatement 和 ResultSet 解决了上述摘要中的问题 1

关于 2 有什么建议吗?

【问题讨论】:

标签: java mysql hibernate stored-procedures primefaces


【解决方案1】:

通常不需要一次为数万行获取多个字段。大多数用例属于从大量行中仅获取几列或仅从少数行中获取大量列的类别。在 ORM 之前的好日子里,标准方法是创建两个查询,一个返回带有几列的结果集/游标,另一个返回单行的所有列。此外,还创建了两个值对象来处理这些存储过程的结果。看起来您已经完成了一半,因此您也可以使用 Hibernate 完全实现此方法。

【讨论】:

    猜你喜欢
    • 2021-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-05
    • 2011-11-06
    • 1970-01-01
    • 2020-03-27
    • 1970-01-01
    相关资源
    最近更新 更多