2013-04-28 3 views
5

Я собираюсь начать новый проект, который будет играть с очень большой базой данных, поэтому будет много операций с базой данных.Spring JPA: построитель запросов против Query Builder, какой из них использовать?

Я решил использовать Spring JPA как свой ORM. Теперь Spring JPA предоставляет различные методы для использования в слое DAO. Я запутался между создателем критериев и Query DSL. Оба, кажется, хорошо решают мою проблему, и я думаю, что нет смысла использовать оба из них в одном проекте, потому что они обеспечивают такую ​​же функциональность.

Итак, какой из них использовать и почему?

ответ

5

API-интерфейс JPA 2 Criteria и Querydsl эквивалентны по функциональности, но Querydsl был разработан, чтобы быть более свободным и более похожим на JPQL/SQL. Таким образом, его можно использовать в качестве замены как для критериев JPQL, так и для JPA 2.

Здесь также Блогпост по данной теме, которая показывает, как компактный Querydsl запросы по сравнению с JPA 2 Criteria API Querydsl as an alternative to the JPA 2 Criteria API

Этот ответ является предвзятым, так как я за Querydsl.