如何修改生成的hibernate SQL查询?

时间:2011-03-03 21:31:29

标签: java sql hibernate orm customization

我有点好奇,有没有办法修改hibernate的核心,以便我可以自定义生成的SQL query。例如,要在生成的查询中添加功能以使用connect by prior(oracle)或我想要自定义的任何其他子句。

3 个答案:

答案 0 :(得分:3)

您可以通过继承Oracle dialect来创建自定义方言。在我看来,这应该是更简单的方法。我真的不认为你想弄乱Hibernate Core。

答案 1 :(得分:3)

起初,这些问题总会在我身上发出警告。你被警告了......

AFAIK,hibernate使用所谓的dialects进行特定优化。也许您可以扩展现有的一种Oracle方言或提供自己的方言。

答案 2 :(得分:1)

特定于DBMS的功能(如CONNECT BY)通常通过发出本机SQL查询在Hibernate应用程序中使用。它们的结果可以映射到实体,以便您可以像使用常规HQL查询一样使用它们。

试图让Hibernate生成它们会有点过分。

另见: