即使我将Object
转换为int,但发生此异常......
实际上我的Hibernate-JPA方法返回Object
然后我将Object
转换为int
...
这是我的Hibernate代码:
@Transactional
public Object getAttendanceList(User user){
Query query = entityManager.createQuery("select Count(ad) from AttendanceDemo ad inner join ad.attendee at where at.user=:user",
Long.class);
query.setParameter("user", user);
return query.getSingleResult();
}
现在我将此Object
转换为int
:
int k = (Integer) userService.getAttendanceList(currentUser);
我正在将Object
转换为Integer
。
答案 0 :(得分:48)
使用:
((Long) userService.getAttendanceList(currentUser)).intValue();
代替。
.intValue()
方法在类Number
中定义,Long
扩展。
答案 1 :(得分:3)
结果的数量(理论上)可以大于整数的范围。我会重构代码并使用返回的long值。