JPA 和 Hibernate - 标准与 JPQL 或 HQL [英] JPA and Hibernate - Criteria vs. JPQL or HQL

查看:31
本文介绍了JPA 和 Hibernate - 标准与 JPQL 或 HQL的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用的优缺点是什么标准HQL?Criteria API 是在 Hibernate 中表达查询的一种很好的面向对象的方式,但有时 Criteria Queries 比 HQL 更难理解/构建.

What are the pros and cons of using Criteria or HQL? The Criteria API is a nice object-oriented way to express queries in Hibernate, but sometimes Criteria Queries are more difficult to understand/build than HQL.

您什么时候使用 Criteria,什么时候使用 HQL?您更喜欢哪些用例?还是只是口味问题?

When do you use Criteria and when HQL? What do you prefer in which use cases? Or is it just a matter of taste?

推荐答案

对于动态查询,我最喜欢 Criteria Queries.例如,根据某些参数动态添加一些排序或保留某些部分(例如限制)要容易得多.

I mostly prefer Criteria Queries for dynamic queries. For example it is much easier to add some ordering dynamically or leave some parts (e.g. restrictions) out depending on some parameter.

另一方面,我将 HQL 用于静态和复杂查询,因为它更容易理解/阅读 HQL.此外,我认为 HQL 更强大一些,例如用于不同的连接类型.

On the other hand I'm using HQL for static and complex queries, because it's much easier to understand/read HQL. Also, HQL is a bit more powerful, I think, e.g. for different join types.

这篇关于JPA 和 Hibernate - 标准与 JPQL 或 HQL的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆