From e853dd63e435618ef815abb4c98194c192890b81 Mon Sep 17 00:00:00 2001 From: "yunhao.wang" Date: Tue, 30 Oct 2018 16:50:51 +0800 Subject: [PATCH] =?UTF-8?q?count=E6=96=B9=E6=B3=95=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?=E8=A3=85=E6=8D=A2=EF=BC=8Clong=E5=BC=BA=E8=BD=AC=E4=B8=BAint?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pojo/base/jpa/daoimpl/BaseRepositoryImpl.java | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/daoimpl/BaseRepositoryImpl.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/daoimpl/BaseRepositoryImpl.java index 333cb8b..e55750a 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/daoimpl/BaseRepositoryImpl.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/daoimpl/BaseRepositoryImpl.java @@ -338,8 +338,9 @@ public class BaseRepositoryImpl extends SimpleJpaRep @Override public int listCount() { - return entityManager.createQuery("select count(distinct model) from " + persistentClass.getName() + " as model",Integer.class) - .getSingleResult(); + Long count = entityManager.createQuery("select count(distinct model) from " + persistentClass.getName() + " as model",Long.class) + .getSingleResult(); + return count == null ? 0 : count.intValue(); } @Override @@ -369,14 +370,15 @@ public class BaseRepositoryImpl extends SimpleJpaRep } } - Query queryObject = entityManager.createQuery(queryString.toString(),Integer.class); + Query queryObject = entityManager.createQuery(queryString.toString(),Long.class); for (int i = 0; i < size; i++) { if(values[i] != null) { queryObject.setParameter(propertyNames[i], values[i]); } } - return (int) queryObject.getSingleResult(); + Long count = (Long) queryObject.getSingleResult(); + return count == null ? 0 : count.intValue(); } @Override @@ -491,7 +493,8 @@ public class BaseRepositoryImpl extends SimpleJpaRep } } - return entityManager.createQuery(queryString.toString(),Integer.class).getSingleResult(); + Long count = entityManager.createQuery(queryString.toString(),Long.class).getSingleResult(); + return count == null ? 0 : count.intValue(); } @Override @@ -548,12 +551,14 @@ public class BaseRepositoryImpl extends SimpleJpaRep queryString.append(hqlWhere); } - return entityManager.createQuery(queryString.toString(),Integer.class).getSingleResult(); + Long count = entityManager.createQuery(queryString.toString(), Long.class).getSingleResult(); + return count == null ? 0 : count.intValue(); } @Override public int findByHqlCount(String hql) { - return entityManager.createQuery(hql,Integer.class).getSingleResult(); + Long count = entityManager.createQuery(hql,Long.class).getSingleResult(); + return count == null ? 0 : count.intValue(); } @Override @@ -630,7 +635,8 @@ public class BaseRepositoryImpl extends SimpleJpaRep @Override public int findBySqlCount(String sql) { - return (int) entityManager.createNativeQuery("select count(*) from ( " + sql + " ) as usertable",Integer.class).getSingleResult(); + Long count = (Long) entityManager.createNativeQuery("select count(*) from ( " + sql + " ) as usertable",Long.class).getSingleResult(); + return count == null ? 0 : count.intValue(); } @Override