Spring+Hibernate3的框架中用到了關聯查詢
表User:Address是一對多的關系
UserBean中有一個addresses的Set
現在要查詢出這樣的User,擁有Address中門牌doorplate為"642"的User,
現在DB中只有一個這樣的User,這個User擁有門牌doorplate為"642"的Address五個~~
創建DetachedCriteria 的語句如下:
DetachedCriteria detachedCriteria = DetachedCriteria.forClass(User.
class);
detachedCriteria.createCriteria(
"才").add(Restrictions.like("doorplate","642"));
實際查詢語句如下:
List list = getHibernateTemplate().findByCriteria(queryCriteria);
理論上查詢出來的list應該User的list是1
總結如下
1:
DetachedCriteria addressCriteria = DetachedCriteria.forClass(User.class).createCriteria("addresses");
addressCriteria.add(Restrictions.eq("doorplate","642")):
2:
DetachedCriteria addressCriteria = DetachedCriteria.forClass(User.class).createAlias("addresses", "a");
addressCriteria.add(Restrictions.eq("a.doorplate","642")):
posted on 2006-10-20 11:10
★yesjoy★ 閱讀(5801)
評論(4) 編輯 收藏 所屬分類:
Hibernate學習