Hibernate5.2中采用JPA EntityManager方案实现原生sql 查询 返回混合数据实体
查询映射类
@SqlResultSetMapping(name = "resultMappingName", entities={
@EntityResult(entityClass=ResultEntity.class,fields={
@FieldResult(name="类字段名", column="数据库列名 / 别名"),
@FieldResult(name="类字段名", column="数据库列名 / 别名"),
...
}),
})
/**
* @author seanzhao
* 2018年6月29日
*/
@Entity
public class ResuleEntity{
@Id
private String idField;
private String field;
...
public ResuleEntity(){
}
//getter
//setter
}
查询语句
javax.persistence.EntityManager em;
javax.persistence.Query query = em.createNativeQuery("select 列名1,列名2 from 表名", "resultMappingName");
List<ResultEntity> resultList = query.getResultList();
已经采Hibernate Session 的项目如何获得EM对象?
hibernateTemplate.getSessionFactory().createEntityManager();