Object 转int 缺报 long 不能转int的错误

String jpql="select count(t) from student t";
Query
query=entityManager.createQuery(jpql); Object sum= query.getSingleResult();
pg.setSum((int)sum);

pg.setSum((int)sum);他说我这句ava.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Integer

Object sum= query.getSingleResult(); 这里返回的是Long类型的,所以你转成Long类型就好了
pg.setSum((Long)sum);

Object 不能强制转换成int可以借助Integer去进行转换。

jpdl查询返回sum类型是Long类型,Long类型转换成Integer,不能直接强转,需要使用Long.intValue()方法