天天看點

Hibernate純sql查詢VO對象封裝

hibernate 純sql查詢傳回結果集(未關聯映射)組裝VO的問題

//須保證别名字段與Vo字段一緻

//引号中為vo對象屬性需與sql查詢傳回字段一緻

.addScalar("chname").setResultTransformer(Transformers.aliasToBean(Vo.class))

例:

@Override

public List<EmployeeGroupVo> selectLeaderEmpRef(String leid) {

String sql = "SELECT e.uid as uid,e.uid as eid,e.employee_name as chname,l.employee_id as leid,g.group_name as gname FROM t_employee as e,t_group as g,t_group_leader l where e.group_id=g.uid and l.group_id=g.uid";

Query query = hibernateTemplate.getSessionFactory().getCurrentSession().createSQLQuery(sql).addScalar("uid").addScalar("eid")

.addScalar("chname").addScalar("leid").addScalar("gname").setResultTransformer(Transformers.aliasToBean(EmployeeGroupVo.class));

List<EmployeeGroupVo> list = query.list();

return list;

}