Hibernate:Query中list、iterate和uniqueResult三个方法的区别

Hibernate Query 方法详解
本文详细介绍了Hibernate Query接口中的list、iterate和uniqueResult方法的区别。list方法将所有结果转换为Model对象并放入List;iterate方法按需逐条转换;uniqueResult则确保结果唯一,否则抛出异常。

想看下org.hibernate.Query接口中定义的三个方法(list、iterate和uniqueResult)有什么区别。 

通过追踪地看一相关源码后,发现情况是这样的。

简单说来,它们的特点是这样的:
    1,list方法是把所有满足条件的结果集都解析转换成Model对象,再把这些对象放到List实例中。
    2,iterate调用了ResultSet的next方法,按需要地一个一个地解析转换成model类。
    3,uniqueResult,没啥说的,它实质上是list()方法,只不过是在外面再用uniqueElement处理了下。注意,这个方法如果拿回的List中不只是含有一个Model对象的话,会抛出NonUniqueResultException异常。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值