我正在创建一个拥有40多个数据库表的Java EE项目。哪种持久性API更适合用于这样的项目:hibernate/jpa等
我甚至在谷歌上也找不到任何与这种情况相对应的帖子。
您有很多选择,如果不了解更多具体需求,您的问题很难回答。
当您想要获得"持久性"并快速运行时,请使用JPA。如果您不太关心SQL或关系模型,而是希望"持久化"数据并执行CRUD(OLTP),那么JPA是您的最佳选择。一些示例实现:
- 休眠
- EclipseLink
- OpenJPA
当您想要控制SQL时,请使用非标准框架。当您想要对框架发出的查询进行细粒度控制时,这些可能更适合,因为您想要执行的远不止"CRUD"(即OLAP):
- MyBatis
- 弹簧数据
- jOOQ
- QueryDSL
当您想自己完成这一切时,直接使用JDBC(在某种程度上也是一种"持久性API")
JPA,使用您喜欢的任何实现:Hibernate、EclipseLink。
(JPA是一个有多种实现的标准)