关于hibernate的查询返回类型问题总结

假设返回的都是一个集合。

1首先将放回结果分为实体集合,和自定义的javaBean集合。

2用sql和hql两种类型查询语句查询

那么总共有四种情况

===================================================================================

a.用sql  返回实体集合(单表查)

1.sql语句 select * from  table

2. 创建SQLQuery      query

3.query.addEntity(实体类.class);

4.query.list();

b.用hql  返回实体类集合   

1.hql语句   from  实体类  后边加条件(单表查)    

   hql语句   select    new A(a.name,a.age)  from A a,B b where a.age = b.age(多表查,也就是说A实体没有配置和B的关系,返回A实体name和age字段,A需要有构造方法, 构造方法中对name,age赋值)

2. 创建Query      query

3.query.list();

c.用sql  返回自定义的javaBean(可以多表查询,也就是说可以返回不同的表中的字段组合到一个自定义的javaBean中)

1.sql语句 select  t.name as n   from table t  后边加上条件  ====》重点是javaBean的属性名字要和sql中的别名一样。

2.创建SQLQuery query

3.query.setResultTransformer(Transformers.aliansToBean(javaBean.class))

4.query.list();

d.用hql返回自定义javaBean=====好像没有。。(我不知道)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值