Hibernate中原生sql查询多个表,数据映射
2013-04-03 16:15
323 查看
在Hibernate中利用sql查询多张表中自己所需要的字段时,怎么把查询出的结果取出来呢?
这两种方法不妨一试:
可以新建一个实体Bean,属性为你查询出来的各个字段。
比如:
String sql = “select order.userid,food.fname from food,order where order.foodid=food.id”;
Query query = session.createSQLQuery(sql);
一、Hibernate将查出来的列组装到集合类中去,Map。
List list = query.setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP).list();
二、Hibernate将查出来的列组装到集合类中去,List。
List list = query.setResultTransformer(Transformers.aliasToBean(MyOrderBean.class)).list();
【其中MyOrderBean是包含userid,fname的实体bean】
这样处理过后可以通过迭代将数据取出
这两种方法不妨一试:
可以新建一个实体Bean,属性为你查询出来的各个字段。
比如:
String sql = “select order.userid,food.fname from food,order where order.foodid=food.id”;
Query query = session.createSQLQuery(sql);
一、Hibernate将查出来的列组装到集合类中去,Map。
List list = query.setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP).list();
二、Hibernate将查出来的列组装到集合类中去,List。
List list = query.setResultTransformer(Transformers.aliasToBean(MyOrderBean.class)).list();
【其中MyOrderBean是包含userid,fname的实体bean】
这样处理过后可以通过迭代将数据取出
相关文章推荐
- Hibernate使用原生SQL适应复杂数据查询
- Hibernate原生SQL查询数据转换为HQL查询数据方法
- 解决Hibernate原生SQL映射问题 - SQL查询出来的结果映射为值对象
- Hibernate使用原生SQL适应复杂数据查询
- hibernate原生sql查询映射java bean问题,出现Ljava.lang.object错误
- Hibernate使用原生SQL多表查询时字段名相同导致查询数据覆盖问题解决办法
- 在hibernate中,如何把原生sql查询出来的结果映射到实体bean
- hibernate 原生sql查询映射到实体bean
- Hibernate使用原生SQL适应复杂数据查询
- Hibernate联合主键映射规则和数据查询原理
- django -----原生SQL语句查询与前端数据传递
- Hibernate中的查询:HQL、Criteria、原生SQl
- yii 使用原生sql 查询 以某一字段分组 每个字段取出最新的一条数据
- hibernate中一对多映射(set集合中存放的原生数据类型,而不是实体)
- 使用原生sql查询数据返回object类型list时,转换数据列出现转换类型错误(但写法正确)
- Hibernate书写原生SQL语句查询(用于复杂多表查询)
- Hibernate SQLQuery 原生SQL 查询及返回结果集处理-1
- Hibernate原生SQL查询
- Hibernate SQLQuery 原生SQL 查询及返回结果集处理-1
- hibernate在使用sql查询query自动转化成model类型数据,query.addEntity