因为JPA里面的返回值规定是Long, Hibernate为了兼容这个,所以修改了返回值。
如果你从Hibernate 3.0.x/3.1.x升级到最新的hibernate,一定要注意,3.2+版的很多sql函数如count(), sum()的唯一返回值已经从Integer变为Long,如果不升级代码,会得到一个ClassCastException。
这个变化主要是为了兼容JPA,可以在hibernate.org的最新文档中找到说明。
如果你从Hibernate 3.0.x/3.1.x升级到最新的hibernate,一定要注意,3.2+版的很多sql函数如count(), sum()的唯一返回值已经从Integer变为Long,如果不升级代码,会得到一个ClassCastException。
这个变化主要是为了兼容JPA,可以在hibernate.org的最新文档中找到说明。