首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

HQL的返回值该如何取得

2012-02-13 
HQL的返回值该怎么取得?比方说,我的hql语句是selectcount(cat) from Cat cat或者是查询其他的聚集函数的话

HQL的返回值该怎么取得?
比方说,我的hql语句是select count(cat) from Cat cat
或者是查询其他的聚集函数的话,他返回的也是List集合吗?
而事实上,这个语句应该只返回一个int型数据哦,请问该怎么获取这个返回值?

[解决办法]

[解决办法]
恩,返回的是LIST,上面的SQL查询返回的List里面只有一条记录,直接List.get(0)获取;
[解决办法]
主要还是看调用什么方法

有返回单一值的

可以先instanceof看看返回什么类型

如果list,就按楼上说的
[解决办法]
Query q = session.createQuery("select count(*) from table");
Integer i = (Integer)q.uniqueResult(); 

这样就可以了,要确保你的hql语句只返回一个对象,否则调用uniqueResult();会有异常。

[解决办法]

探讨
Query q = session.createQuery("select count(*) from table");
Integer i = (Integer)q.uniqueResult();

这样就可以了,要确保你的hql语句只返回一个对象,否则调用uniqueResult();会有异常。

[解决办法]
Query.uniqueResult();
[解决办法]
返回的不是Integer而是Long,取决于Hibernate的版本,最新的都按Long返回.
[解决办法]
Java code
Query  query = session.createQuery("select count(*) from table");  List list = query.list()
[解决办法]
探讨
Java codeQuery query = session.createQuery("select count(*) from table");
List list = query.list()

[解决办法]
探讨
Query q = session.createQuery("select count(*) from table");
Integer i = (Integer)q.uniqueResult();

这样就可以了,要确保你的hql语句只返回一个对象,否则调用uniqueResult();会有异常。

[解决办法]
Query query = session.createQuery("select count(*) from table"); 
 List list = query.list();
Integer i = (Integer)list.get(0);
[解决办法]
探讨
Query query = session.createQuery("select count(*) from table");
List list = query.list();
Integer i = (Integer)list.get(0);

[解决办法]
探讨
Query q = session.createQuery("select count(*) from table");
Integer i = (Integer)q.uniqueResult();

这样就可以了,要确保你的hql语句只返回一个对象,否则调用uniqueResult();会有异常。

[解决办法]
探讨
Query query = session.createQuery("select count(*) from table");
List list = query.list();
Integer i = (Integer)list.get(0);

热点排行