public List<InsuranceRecordVo> getCustomRecodeListByCustomId2(String customId){ String sql="select b.product_name as companyName, a.create_date as date from ******* where customer_id = ? "; Query query = this.createSqlQuery(sql, customId); query.setResultTransformer(Transformers.aliasToBean(InsuranceRecordVo.class)); return query.list();
参见上面,需要将查询的两个字段映射到pojo中,关键使用
query.setResultTransformer(Transformers.aliasToBean(InsuranceRecordVo.class));
或者
- query.setResultTransformer(new AliasToBeanResultTransformer(InsutanceRecordVo.class));
进行映射,前提时查询出的字段使用as 别名,将字段名和pojo中字段名保持一致,并且类型对应,query.list()查询出的即为封装好的pojo。
并且在必要情况下可以通过
- query.addScalar("componeName", Hibernate.STRING);