Java MySQL:从hibernate调用存储过程(从多个表返回数据)

Java MySQL:从hibernate调用存储过程(从多个表返回数据),java,mysql,hibernate,stored-procedures,primefaces,Java,Mysql,Hibernate,Stored Procedures,Primefaces,我在mysql中有一个存储过程,它接收多个参数。 现在,我想在java中从hibernate调用它。 另外,我想实现延迟加载,例如,如果数据库中有50000条记录。该过程不会一次返回所有记录,而是仅在用户需要时返回。 我使用PrimeFacesDataTable来显示数据 注意我不需要数据库表的所有列,根据用户将提供给存储过程的参数,我只需要5到6 db列。为此,我创建了POJO,其列表将保存日期 摘要 从hibernate调用存储过程并将多个参数传递给 它 实现延迟加载以提高 应用程序 更新好

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

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

摘要

  • 从hibernate调用存储过程并将多个参数传递给 它
  • 实现延迟加载以提高 应用程序
  • 更新好的,我使用CallableStatement和ResultSet解决了上述总结中的问题1


    关于2的任何建议?

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

    可能的重复感谢您提到它是一个可能的重复。但是如果你看一下我的问题的全部内容,你会发现我在总结中也提到了延迟加载作为我的第二点。顺便说一句,谢谢