Hibernate hql 多表查詢

weixin_34402090發表於2014-11-06
String hql="select c from Col c ,UserRole role where c.id=role.columnId and c.id=? and role.userId=?";

this.getHibernateTemplate().find(hql,new Object[]{colId,userId}).get(0);

上面返回的是一個物件實體,實體的型別是Col

 

String hql="from Col c ,UserRole role where c.id=role.columnId and c.id=? and role.userId=?";

this.getHibernateTemplate().find(hql,new Object[]{colId,userId}).get(0);

上面返回的是一個陣列  陣列的第一個元素型別是Col,第二個元素型別是UserRole

 

所以在多表查詢中,如果要取得某個單獨的實體直接用"select c" (c表示該類在查詢中的別名)

相關文章