hibernate3.2以后的版本中,聚合函数比如count(*) 返回的类型是 Long 类型的,不能直接转化成 Integer类型,这样挺郁闷的,有1个办法可以解决,举例:
public Integer count(final Integer userId) {
return ((Number) getHibernateTemplate().find("select count(id) from Diary diary where diary.userId=?", userId).get(0)).intValue();
}
查询所有某个用户所有日记的总数,将返回的值先转化成 Number 类型,然后再用 Number类的intValue() 方法来获得Integer类型;