hibernate用setResultTransformer转换
当你用hibernate查出数据,但是类型不是原来的类型怎么办,新增的实体类还可以用,query.setResultTransformer(Transformers.aliasToBean(AA.class));这种形式可以解决查出来的数据不能使用的问题.
String sql = "select USER_ID,USERNAME from test where USER_ID= :id"; Query query = getCurrentSession().createSQLQuery(sql);//.addScalar("MODULE_ID", LongType.INSTANCE); query.setBigDecimal("id", new BigDecimal("1")); query.setResultTransformer(Transformers.aliasToBean(UserEntity.class)); List<UserEntity> list=null; list=query.list(); return list;
注意:
(1)这种转换实体类很严格,必须连属性名字要和数据库字段高度一致(注解此时没很大作用用.
(2)实体类可以比表字段少一些字段.