From 3a10c1166280c5e733318735c28916d6ba2a9d1c Mon Sep 17 00:00:00 2001 From: Zheng Jie <201507802@qq.com> Date: Thu, 5 Aug 2021 17:08:04 +0800 Subject: [PATCH] =?UTF-8?q?[Bug=E4=BF=AE=E5=A4=8D](master):=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=E9=A1=B5=E9=9D=A2=E5=88=86=E9=A1=B5?= =?UTF-8?q?=E5=8A=9F=E8=83=BDBUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit close https://github.com/elunez/eladmin/issues/667 --- .../zhengjie/service/impl/GeneratorServiceImpl.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/eladmin-generator/src/main/java/me/zhengjie/service/impl/GeneratorServiceImpl.java b/eladmin-generator/src/main/java/me/zhengjie/service/impl/GeneratorServiceImpl.java index 1b1803b2..0263bd17 100644 --- a/eladmin-generator/src/main/java/me/zhengjie/service/impl/GeneratorServiceImpl.java +++ b/eladmin-generator/src/main/java/me/zhengjie/service/impl/GeneratorServiceImpl.java @@ -42,6 +42,8 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.File; import java.io.IOException; +import java.math.BigDecimal; +import java.math.BigInteger; import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -75,19 +77,22 @@ public class GeneratorServiceImpl implements GeneratorService { // 使用预编译防止sql注入 String sql = "select table_name ,create_time , engine, table_collation, table_comment from information_schema.tables " + "where table_schema = (select database()) " + - "and table_name like ? order by create_time desc"; + "and table_name like :table order by create_time desc"; Query query = em.createNativeQuery(sql); query.setFirstResult(startEnd[0]); query.setMaxResults(startEnd[1] - startEnd[0]); - query.setParameter(1, StringUtils.isNotBlank(name) ? ("%" + name + "%") : "%%"); + query.setParameter("table", StringUtils.isNotBlank(name) ? ("%" + name + "%") : "%%"); List result = query.getResultList(); List tableInfos = new ArrayList<>(); for (Object obj : result) { Object[] arr = (Object[]) obj; tableInfos.add(new TableInfo(arr[0], arr[1], arr[2], arr[3], ObjectUtil.isNotEmpty(arr[4]) ? arr[4] : "-")); } - Query query1 = em.createNativeQuery("SELECT COUNT(*) from information_schema.tables where table_schema = (select database())"); - Object totalElements = query1.getSingleResult(); + String countSql = "select count(1) from information_schema.tables " + + "where table_schema = (select database()) and table_name like :table"; + Query queryCount = em.createNativeQuery(countSql); + queryCount.setParameter("table", StringUtils.isNotBlank(name) ? ("%" + name + "%") : "%%"); + Object totalElements = queryCount.getSingleResult(); return PageUtil.toPage(tableInfos, totalElements); }