首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么Hibernate 5中不推荐条件查询?

为什么Hibernate 5中不推荐条件查询?
EN

Stack Overflow用户
提问于 2016-07-19 01:23:42
回答 1查看 26.2K关注 0票数 38

我们已经知道,规范查询Hibernate 5中是不推荐的。在Hibernate的早期版本中,这是一个非常有用的特性。而且它的表现仍然好于HQL。

那么,在Hibernate 5中它被拒绝的原因是什么呢?

而且,这个问题并不是这个问题的重复,因为我想知道标准查询被否决的原因。

这是来自这里。

Hibernate提供了一个旧的、遗留的org.hibernate.Criteria API,应该被认为是不推荐的。没有任何特性开发会针对这些API。最终,Hibernate特有的标准特性将被移植为JPA javax.persistence.criteria.CriteriaQuery的扩展。有关org.hibernate.Criteria API的详细信息,请参阅Legacy Hibernate标准查询。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-09 23:23:16

我们反对使用标准API来代替JPA扩展支持。

考虑到这一点:

代码语言:javascript
复制
CriteriaBuilder cb = entityManager.getCriteriaBuilder();
HibernateCriteria hc = cb.unwrap( HibernateCriteria.class );
...
query.where( hc.someAwesomeThing( ... ) );
List<SomeEntity> entities = entityManager.createQuery( query ).getResultList();

与评论相反,我们do打算继续提供Hibernate特有的特性,但是我们希望通过标准API来引入这些特性,而不是试图保持两个非常不同的API保持同步。

票数 20
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38448195

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档