Hibernate query.list()查询结果为空
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hibernate query.list()查询结果为空相关的知识,希望对你有一定的参考价值。
代码很简单,如下:
private static SessionFactory sf = null;
@SuppressWarnings("unchecked")
@Override
public List<DetailAccount> findAllDetails() throws DAOException
sf = new AnnotationConfiguration().configure().buildSessionFactory();
Session session = sf.getCurrentSession();
session.beginTransaction();
Query query = session.createQuery("from DetailAccount");
List<DetailAccount> details = query.list();
session.getTransaction().commit();
return details;
在执行List<DetailAccount> details = query.list()的时候,details的size=0,查询不到数据;
但是在控制台打印出hibernate生成的sql,放到数据库中去执行,能查到数据,生成的sql如下:
select
detailacco0_.id as id4_,
detailacco0_.amount as amount4_,
detailacco0_.category as category4_,
detailacco0_.note as note4_,
detailacco0_.occurDate as occurDate4_
from detailaccount detailacco0_;
servlet用HQL查询语句返回的结果集query.list()怎么进行判别是不是为空,或者说 结果集里有几组结果怎么查询
String hql = "from Carpark c where c.parkno=? and c.companyno=?";// HQL语句
Query query = session.createQuery(hql);
query=query.setParameter(0,Integer.parseInt(parkno))
.setParameter(1,"");
list=query.list();
List里有一个方法isEmpty()返回boolea值 true不为空 否则为空
另外一种通过
if(list!=null && list.size()>0)
不为空
参考技术B boolean b = list.isEmpty();
if(b == true)list为空
else list不为空
******************************
int len = list.size();得出有几组数据本回答被提问者采纳
以上是关于Hibernate query.list()查询结果为空的主要内容,如果未能解决你的问题,请参考以下文章
hibernate query.list() 返回的数据类型
Hibernate HQL - query.list() 返回对象数组的对象数组
Hibernate query.list() 方法返回空列表而不是空值