一:将需要查询的字段抽取出来,建议个新类,用构造函数将其初始化。
二:写SQL语句,查出你要查的结果,用List<Object>保存,再将其转成你所建的新类。
代码:
public List<AwardAndRecommend> getAllRecommends() {
StringBuffer hql = new StringBuffer();
List<AwardAndRecommend> aars = new ArrayList<AwardAndRecommend>();
hql.append("select a.rcmdName, h.hrsPrmPstTitle, h.locationId, h.openDt,a.rcmdDt, h.statusCode, h.apprBonus,h.hrsJobOpeningId,a.userId"
+ " from HRSJoRecommendVO a,HRSAwardRecruitVO h where a.openingId=h.hrsJobOpeningId");
log.debug("hql = " + hql.toString());
Session session = sessionFactory.getCurrentSession();
Query query = session.createQuery(hql.toString());
List<Object> voList = query.list();
for (int i = 0; i < voList.size(); i++) {
Object[] o = (Object[]) voList.get(i);
AwardAndRecommend aar = new AwardAndRecommend((String) o[0],
(String) o[1], (Long) o[2], (Date) o[3], (Date) o[4],
(String) o[5], (Double) o[6], (Long) o[7], (String) o[8]);
aars.add(aar);
}
return aars;
}