1.关联查询
当查询关联级别表时,首先使用
//添加关联表的别名
dc.createAlias("region", "r");
1.添加表别名
2.然后添加查询条件
dc.add(Restrictions.like("r.city", "%"+city+"%"));
3.将查询到的一个含有A,B两个个对象结果集的数组变成(B)结果集,并将A结果集添加到B对象的属性(A)中
//多表查询时数据封装到当前对象结果集
criteria.setResultTransformer(DetachedCriteria.ROOT_ENTITY);
List<Staff> rows = (List<Staff>) this.getHibernateTemplate().findByCriteria(criteria, firstResult, maxResults);
pageBean.setRows(rows);
2.Hibernate死循环(分页查询死循环问题)
1、页面不需要展示关联数据时
解决:将关联对象属性排除掉
2、页面需要展示关联数据时
解决:将关联对象改为立即加载,并且将关联对象中的属性排除