我一直在阅读一些答案,但我仍然感到困惑。为什么?因为您提到的差异与性能无关。它们易于使用。(Objetc(条件)和SQL(hql))。但是由于某些原因,我想知道“条件”是否比hql慢。
我在另一个答案中读到了
“ HQL和criteriaQuery在性能方面有所不同,每次您使用criteriaQuery触发查询时,它都会为表名创建一个新别名,该别名不会反映在任何数据库的上次查询缓存中。这导致了开销编译生成的SQL,需要更多时间来执行。” 由Varun Mehta提供。
这是非常接近但!我在另一个网站(http://gary-rowe.com/agilestack/tag/hibernate/)上阅读过Hibernate 3.3及更高版本不再是这种情况(请阅读:9)Hibernate运行缓慢,因为Criteria接口不一致)
我已经做了一些测试,试图找出差异,但是两者都会生成qry,并且不会更改表的别名。
我很困惑 如果有人知道主要原因,请您能帮助我们。谢谢
JPA doesn't have Criteria
?