今天在通过hibernate查询数据的时候出现了一个很头疼的问题,数据库中明明有数据,但是死活查不到,还没有任何异常产生,郁闷了半天。
简单的代码贴一下:
Query query = getSession().createSQLQuery(sql);
query.setFirstResult(start);
query.setMaxResults(count); List<Map<String,Object>> data=query.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP).list(); page.setDatas(data); page.setTotalRecords(data.size()); return page;
其中sql就是简单的sql,放在数据库中可以直接运行。
数据库中只有一条数据。
后来突然想到,[start]是从0开始,但是从从前边获取到的是从1开始,所以死活查不到数据,仅此记录。