SessionFactory sessionFactory = getHibernateTemplate().getSessionFactory();
Session session = sessionFactory.openSession();
Criteria criteria = session.createCriteria(TbArea.class);
criteria.setFetchMode("tbDepartmentTrees",FetchMode.JOIN);
List<TbArea> list = criteria.list();
session.close();
return list;
//return findAll(TbArea.class); (会产生n+1问题)
参考
session = sessionFactory.openSession();
Criteria criteria = session.createCriteria(One.class);
criteria.add(Expression.eq("COneId",new Integer(1)));
one = (One)criteria.setFetchMode("twos",FetchMode.JOIN).setFetchMode("twos.threes",FetchMode.JOIN).setFetchMode("twos.threes.fours",FetchMode.JOIN).uniqueResult();
session.close();
Hibernate n+1 select问题的解决
猜你喜欢
转载自cfyme.iteye.com/blog/1132874
今日推荐
周排行