hibernate n+1查询效率问题

1、n+1说明

引用:http://blog.csdn.net/lhooouuu/article/details/6021650

即one-to-many存在1+n查询、many-to-one存在m+1查询。

2、所遇问题

自己在项目中由于使用的是Criteria,它对于注解@ManyToOne @Fetch(FetchMode.JOIN)貌似无效,执行中仍然进行m+1查询,自己改用hql语句结果执行的就是连接查询,问题得以解决。

3、可能原因分析

找一个自己乱想的理由:Criteria是基于对象的,不支持连接查询;而hql是基于sql,支持连接查询

 

 

 

你可能感兴趣的:(Hibernate,n+1)