我正在管理使用PostgreSQL数据库的Spring Web应用程序的开发。Hibernate查询v数据库函数
我正在做db工作并提供脚本(即authenticate_user)供正在使用Hibernate的Java开发人员使用。我对Java和Hibernate的接触有限。
我了解hibernate的基本概念,但肯定不是它提供的全套功能。我想要了解和控制数据层,但想要最好的解决方案,那么最好的解决方案就是一切。
我最初的想法是存储所有作为函数或过程编写的查询/插入/更新脚本,并允许Java开发人员简单地调用它们并使用结果/结果集,而不是构建hibernate表引用和查询Java类/ XML文件。我们的Java开发人员说他宁愿使用hibernate来处理所有事情,并且正在转换我的函数/过程。
到目前为止,我们的sql语句非常简单。当他们达到复杂程度(或更高)时会发生什么,如下面的帖子所示?
How to construct advanced Hibernate Query with OR and summarize functions
如果一个函数/程序被写入数据库,并正在被休眠调用,可以在Java开发人员只称他们(即调用myFunction的(PARAM)或致电MYPROC(PARAM)),并使用结果集的方式与他在hibernate中构建查询的方式完全相同?例如;我有一个从GROUP和HAVING子句返回1000条记录的多个表中选择。如果我将该选择放入一个过程中,hibernate开发人员是否可以简单地调用该过程,并以与仅在hibernate中创建select相同的方式使用这些记录?
非常感谢, 大卫