hibernate用setResultTransformer转换

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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)实体类可以比表字段少一些字段.

以上是关于hibernate用setResultTransformer转换的主要内容,如果未能解决你的问题,请参考以下文章

Hibernate怎么用

hibernate怎么用查询

hibernate里‘query’和‘ Criteria’分别啥时候用

hibernate用HQL查询集合属性

Mybatis现在流行吗,感觉用Hibernate的好像很多哦

hibernate用注解的方式实现orm