hibernate 使用普通sql查詢,對映到自定義pojo中
阿新 • • 發佈:2019-01-23
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"