第一种方式:
1.全部映射
String sql = "select c.* from 表名 c";
SQLQuery navtiveSQL = this.getCurrentSession().createSQLQuery(sql);
navtiveSQL.addEntity(实体类名.class);
List<类名> list= navtiveSQL.list();
2.部分属性映射(注:如果要部分属性映射,则sql里要全部把属性都写上,我觉得跟全部映射没啥区别了)
String sql = "select c.ID as {实体名.name},c.NAME as {实体名.name} from 表名 c";
SQLQuery navtiveSQL = this.getCurrentSession().createSQLQuery(sql);
navtiveSQL.addEntity(实体类名.class);
List<类名> list= navtiveSQL.list();
第二种方式:
String sql = "select c._ID as id,c._NAME as name from 表名 c";
SQLQuery navtiveSQL = this.getCurrentSession().createSQLQuery(sql);
navtiveSQL.addScalar("id", StandardBasicTypes.INTEGER).addScalar("name", StandardBasicTypes.STRING);
navtiveSQL.setResultTransformer(Transformers.aliasToBean(类名.class));
List<类名> list= navtiveSQL.list();
本文介绍两种使用HQL和SQL进行数据查询的方式:一种是通过全部或部分属性映射来获取实体类数据;另一种是通过指定字段,并利用Hibernate转换器将查询结果转化为实体类对象。
9027

被折叠的 条评论
为什么被折叠?



