按票数排序 显示最新答案 共有15个答案 (最后回答: 2年前)
-
首先你犯了一个弊病就是用List,其实这个东西明显就一个值,应该用uniqueResult().
其次,就要看你取值的处理,一般Hibernate中计数一般是Long,你这样强转会出问题的,因为会损失精度.另外还有一个问题估计你肯定没有碰到过,我不知道是不是我现有的框架的问题,我在使用SQL文计数的时候,它的类型是BigDecimal,这个让我头大很长时间.
-
本文探讨了在Hibernate中使用不当的查询方法导致的计数错误,并提供了优化解决方案,包括避免使用List和强转操作,推荐使用uniqueResult()方法获取唯一结果。同时,文章还提及了在不同数据库类型下计数类型可能存在的差异。
首先你犯了一个弊病就是用List,其实这个东西明显就一个值,应该用uniqueResult().
其次,就要看你取值的处理,一般Hibernate中计数一般是Long,你这样强转会出问题的,因为会损失精度.另外还有一个问题估计你肯定没有碰到过,我不知道是不是我现有的框架的问题,我在使用SQL文计数的时候,它的类型是BigDecimal,这个让我头大很长时间.
8403

被折叠的 条评论
为什么被折叠?