6

我将开始一个新项目,该项目将使用非常大的数据库,因此会有大量的数据库操作。

我决定使用 Spring JPA 作为我的 ORM。现在 Spring JPA 提供了在 DAO 层中使用的各种技术。我对 Criteria builder 和 Query DSL 感到困惑。两者似乎都很好地解决了我的问题,我想在同一个项目中使用它们没有意义,因为它们提供相同的功能。

那么现在使用哪一个,为什么?

4

1 回答 1

5

JPA 2 Criteria API 和 Querydsl 在功能上是等效的,但 Querydsl 被设计得更流畅,看起来更像 JPQL/SQL。因此它可以用作 JPQL 和 JPA 2 Criteria 的替代品。

这里还有一篇关于该主题的博文,展示了与 JPA 2 Criteria API Querydsl 作为 JPA 2 Criteria API 的替代方案相比,Querydsl 查询的紧凑程度如何

这个答案是有偏见的,因为我支持 Querydsl。

于 2013-04-30T05:53:15.627 回答