1. 程式人生 > >hibernate關於criteria多表查詢問題

hibernate關於criteria多表查詢問題

在hibernate一對多查詢中關聯查詢的屬性查出來不會被封裝成一個屬性

List list1 = (List) getHibernateTemplate().findByCriteria(detachedCriteria, (pageBean.getCurrentPage()-1)*pageBean.getPageSize(), pageBean.getPageSize());

如list中為region物件,而region屬性中又有user物件,那麼直接查詢的結果就是,list中分別有region和user物件,而不是user物件在region物件內部,這個時候,我們需要加上:

detachedCriteria.setResultTransformer(detachedCriteria.ROOT_ENTITY);

注意:使用這條語句之後不能出現detachedCriteria.setProjection(null); 否則會導致結果失效