使用
String hql = "SELECT u.userPassword, u.userName FROM User u WHERE u.userName = 'cat'";
Query query = session.createQuery(hql);
用query.list();的方法即使只有1条查询结果也返回一个list类型的结果吗?
另外,有没有办法实现 类似mysql中的 select * from table where username='cat' limit 1 这样的效果呢?
第1个回答 2013-08-13
用query.list();的方法即使只有1条查询结果也返回一个list类型的结果吗?
对的
但是你可以查找这个LIST的COUNT属性,就知道有没有数据了本回答被网友采纳
对的
但是你可以查找这个LIST的COUNT属性,就知道有没有数据了本回答被网友采纳
第2个回答 2013-08-13
1、不管结果多少,都是作为一个list返回
接收list的时候,你肯定也使用循环吧?无所谓
2、只要一行结果的话,mysql你已经知道了
sqlserver: SELECT TOP 1 ... ...
Oracle: SELECT .... FROM table WHERE rownum<2
接收list的时候,你肯定也使用循环吧?无所谓
2、只要一行结果的话,mysql你已经知道了
sqlserver: SELECT TOP 1 ... ...
Oracle: SELECT .... FROM table WHERE rownum<2
第3个回答 2017-11-19
有一个方法,当你确定你查询 返回的是一条数据的时候可以使用:
query. uniqueResult()来得到一个单独对象.
query. uniqueResult()来得到一个单独对象.