查询单个对象
1、Query接口定义了uniqueResult方法,该方法强制返回结果只存在一个实例对象,而不再返回list集合形式的查询结果。
2、使用uniqueResult方法注意,通过where子句设置恰当的条件,保证符合查询条件的实例对象仅有一个,或者不存在,如果设置的查询条件不当,查询返回的实例对象多余一个,该方法就会抛出异常,终止运行。
案例:案例2:设置查询条件返回结果不唯一
使用Query的uniqueResult方法查询结果是单个对象,但使用时必须确保,查询结果是1个或0个。
查询不能返回一个单独的结果
要注意查询条件设置,保证查询结果只返回一个结果或者没有一个结果
查询单个对象
hql-查询单个对象
用query.uniqueResult()方法
在Query接口中定义了uniqueResult()方法.这个方法的返回结果只存在一个实例对象.而不是像list()方法那样,返回List集合形式. 使用uniqueResult()方法要注意where子句条件的设置,要保证符合查询条件的实例对象仅有一个,或者不存在.
查询单个对象 在Query接口中定义了uniqueResult()方法.这个方法的返回结果只存在一个实例对象.而不是像list()方法那样,返回List集合形式. 使用uniqueResult()方法要注意where子句条件的设置,要保证符合查询条件的实例对象仅有一个,或者不存在. 如果查询条件设置不当,查询返回的实例对象多于一个,那么就会抛出一个异常,终止运行. Query query=session.createQuery("from Student where sname='张三' "); Student s=(Student)query.uniqueResult(); System.out.println("name"+s.getName()); 用list()方法则是list()方法把HQL语句解析成SQL语句. 用uniqueResult()方法则是uniqueResult()方法把HQL语句解析成SQL语句. 也可以说是Query接口把HQL语句解析成SQL语句.