Hibernate使用SQL查询返回实体类型

来源:互联网 发布:童装代理一手货源淘宝 编辑:程序博客网 时间:2024/05/24 15:36

以前,使用SQL查询,结果放在 RS 结果集中,还要去转换影射到Java类中。Hibernate中,可以自动帮我们注入到Hibernate 甚至是 非 Hibernate 类型当中。

String sql = "select * from T_TMP_PUBLIC_POLICY TP";SQLQuery sqluery = session.createSQLQuery(sql).addEntity(TPublicPolicyTemporary.class);List tmpList = sqluery.list();


注册到非 Hibernate pojo 中:

sess.createSQLQuery("SELECT NAME, BIRTHDATE FROM CATS")          .setResultTransformer(Transformers.aliasToBean(CatDTO.class))  

返回多个实体

sess.createSQLQuery("SELECT {cat.*}, {mother.*}  FROM CATS c, CATS m WHERE c.MOTHER_ID = c.ID") .addEntity("cat", Cat.class) .addEntity("mother", Cat.class){cat.*},   的cat   就是 addEntity(“ 里面的 cat 名称。