Hibernate中的几种查询方法

好多在刚接触Hibernate进行sql查询的时候都不太清楚几种方法查询到的结果到底是什么,下面就结合实际工作中遇到的做个简单介绍,算是个开门红吧!


//-----return this.getSession().createSQLQuery(sql).addEntity(object.class).list();

可以使用sql语句     select * from A

该方法返回一个list<A>集合,可以在方法中get各个属性


//-----return (SgCk)this.getSession().createSQLQuery(sql).addEntity(SgCk.class).uniqueResult();

可以使用sql语句   select * from A a where a.id="+id+"

该方法返回一条数据,也就是说uniqueResult()返回唯一的结果集,这就要求wherw后面跟的条件必须能保证结果的唯一性。


//-----this.saveObject(object);

该方法不用写sql语句,这也是hibernate的强大之处,它可以执行insert和update语句  object是数据库的实体映射对象

主要区别在于添加的时候setId(null)      修改的时候setId(id)

它会自动识别,当id为空时会执行保存    当有id时执行修改,这时候只需要将需要修改的数据set到实体中


//-----return this.getObject(obj.getClass(), id);

该方法也很常用,也不用写sql语句   就是通过id查询一条数据,obj代表实体对象,传入id就会自动查询对应的数据


//-----这是用sql进行数据查询,后续介绍使用hql

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值