JOOQ 与 Hibernate

JOOQ vs Hibernate

当我与 Whosebugers 聊天并使用 Java 阅读其他有关数据库的教程时,他们会指导我使用 JOOQ 而不是 HIBERNATE .

我完全了解 Hibernate 的 ORM,我更喜欢使用 Hibernate,现在通过阅读小项目的教程和实现,我几乎了解了 JOOQ。

但我很困惑该选择什么以及什么是我的动态 Web 应用程序的最佳选择,它可以更大、中等或更小,Hibernate 或 JOOQ?

顺便说一句,在谷歌上搜索了很多,但越来越困惑...!!! 就像:this,this and this.

哪一个最适合开发人员的不同条件和情况。?

虽然 jOOQ 和 Hibernate 争夺相同的目标受众,但它们根本没有解决相同的问题。 You've already linked this article in your question。其实质很简单:

  • 您要解决对象图持久性问题吗?使用 ORM(例如 Hibernate)
  • 您要将 SQL 嵌入到 Java 中吗?使用 SQL(例如 jOOQ)

当然,由于两者API都涉及访问关系数据库,因此它们在功能上有一定程度的重叠。例如。 Hibernate也支持简单的查询,而jOOQ也支持简单的映射。

虽然我们应该避免深入探讨关于对象图持久化或 SQL 是否是与数据库交互的更好方法的主观讨论,但我认为以上是 objective 对 API 更适合,一旦你做出主观决定。

AND:您可以同时使用两者,例如ORM/Hibernate 用于 CRUD,SQL/jOOQ 用于报告。

(免责声明:我在 jOOQ 背后的公司工作,所以这个答案有偏见)