diff --git a/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgreport/util/SqlUtil.java b/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgreport/util/SqlUtil.java index 72fba9b5..081e6314 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgreport/util/SqlUtil.java +++ b/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgreport/util/SqlUtil.java @@ -2,6 +2,7 @@ package com.jero.generater.modules.online.cgreport.util; import java.text.MessageFormat; +import java.util.Arrays; import java.util.HashMap; import java.util.Iterator; import java.util.Map; @@ -16,18 +17,18 @@ import lombok.extern.slf4j.Slf4j; @Slf4j public class SqlUtil { -// public static final String a = "select * from ( {0}) sel_tab00 limit {1},{2}"; -// public static final String b = "select * from ( {0}) sel_tab00 limit {2} offset {1}"; -// public static final String c = "select * from (select row_.*,rownum rownum_ from ({0}) row_ where rownum <= {1}) where rownum_>{2}"; -// public static final String d = "select * from ( select row_number() over(order by tempColumn) tempRowNumber, * from (select top {1} tempColumn = 0, {0}) t ) tt where tempRowNumber > {2}"; -// public static final String e = "select distinct table_name from information_schema.columns where table_schema = {0}"; -// public static final String f = "SELECT distinct c.relname AS table_name FROM pg_class c"; -// public static final String g = "select distinct colstable.table_name as table_name from user_tab_cols colstable"; -// public static final String h = "select distinct c.name as table_name from sys.objects c"; -// public static final String i = "select column_name from information_schema.columns where table_name = {0} and table_schema = {1}"; -// public static final String j = "select table_name from information_schema.columns where table_name = {0}"; -// public static final String k = "select column_name from all_tab_columns where table_name ={0}"; -// public static final String l = "select name from syscolumns where id={0}"; + public static final String A_SQL = "select * from ( {0}) sel_tab00 limit {1},{2}"; + public static final String B_SQL = "select * from ( {0}) sel_tab00 limit {2} offset {1}"; + public static final String C_SQL = "select * from (select row_.*,rownum rownum_ from ({0}) row_ where rownum <= {1}) where rownum_>{2}"; + public static final String D_SQL = "select * from ( select row_number() over(order by tempColumn) tempRowNumber, * from (select top {1} tempColumn = 0, {0}) t ) tt where tempRowNumber > {2}"; + public static final String E_SQL = "select distinct table_name from information_schema.columns where table_schema = {0}"; + public static final String F_SQL = "SELECT distinct c.relname AS table_name FROM pg_class c"; + public static final String G_SQL = "select distinct colstable.table_name as table_name from user_tab_cols colstable"; + public static final String H_SQL = "select distinct c.name as table_name from sys.objects c"; + public static final String I_SQL = "select column_name from information_schema.columns where table_name = {0} and table_schema = {1}"; + public static final String J_SQL = "select table_name from information_schema.columns where table_name = {0}"; + public static final String K_SQL = "select column_name from all_tab_columns where table_name ={0}"; + public static final String L_SQL = "select name from syscolumns where id={0}"; public static final String MYSQL = "MYSQL"; public static final String POST_GRE_SQL = "POSTGRESQL"; @@ -38,21 +39,20 @@ public class SqlUtil { } - public static String a(String var0, Map var1) { + public static String a(String var0, Map var1) { StringBuilder var2 = new StringBuilder(); var2.append("SELECT t.* FROM ( "); - var2.append(var0 + " "); + var2.append(var0).append(" "); var2.append(") t "); if (var1 != null && var1.size() >= 1) { var2.append("WHERE 1=1 "); - Iterator var3 = var1.keySet().iterator(); - while(var3.hasNext()) { - String var4 = String.valueOf(var3.next()); + for (String s : var1.keySet()) { + String var4 = String.valueOf(s); String var5 = String.valueOf(var1.get(var4)); if (oConvertUtils.isNotEmpty(var5)) { var2.append(" AND "); - var2.append(" " + var4 + var5); + var2.append(" ").append(var4).append(var5); } } } @@ -60,34 +60,34 @@ public class SqlUtil { return var2.toString(); } - public static String b(String var0, Map var1) { + public static String b(String var0, Map var1) { String var2 = a(var0, var1); var2 = "SELECT COUNT(*) COUNT FROM (" + var2 + ") t2"; return var2; } - public static String a(String var0, String var1, String var2, Map var3, int var4, int var5) { + public static String a(String var0, String var1, String var2, Map var3, int var4, int var5) { var2 = a(var2, var3); int var6 = (var4 - 1) * var5; String[] var7 = new String[]{var2, var6 + "", var5 + ""}; String var8 = ""; if (MYSQL.equalsIgnoreCase(var8)) { - var2 = MessageFormat.format("select * from ( {0}) sel_tab00 limit {1},{2}", var7); + var2 = MessageFormat.format(A_SQL, var7); } else if (POST_GRE_SQL.equalsIgnoreCase(var8)) { - var2 = MessageFormat.format("select * from ( {0}) sel_tab00 limit {2} offset {1}", var7); + var2 = MessageFormat.format(B_SQL, var7); } else { int var9 = (var4 - 1) * var5; int var10 = var9 + var5; var7[2] = Integer.toString(var9); var7[1] = Integer.toString(var10); if (ORACLE.equalsIgnoreCase(var8)) { - var2 = MessageFormat.format("select * from (select row_.*,rownum rownum_ from ({0}) row_ where rownum <= {1}) where rownum_>{2}", var7); + var2 = MessageFormat.format(C_SQL, var7); } else if (SQL_SERVER.equalsIgnoreCase(var8)) { var7[0] = var2.substring(c(var2)); - var2 = MessageFormat.format("select * from ( select row_number() over(order by tempColumn) tempRowNumber, * from (select top {1} tempColumn = 0, {0}) t ) tt where tempRowNumber > {2}", var7); + var2 = MessageFormat.format(D_SQL, var7); } } - + log.info(var0 + var1); return var2; } @@ -100,19 +100,19 @@ public class SqlUtil { public static String a(String var0, String... var1) { if (oConvertUtils.isNotEmpty(var0)) { if (MYSQL.equals(var0)) { - return MessageFormat.format("select distinct table_name from information_schema.columns where table_schema = {0}", var1); + return MessageFormat.format(E_SQL, var1); } if (ORACLE.equals(var0)) { - return "select distinct colstable.table_name as table_name from user_tab_cols colstable"; + return G_SQL; } if (POST_GRE_SQL.equals(var0)) { - return "SELECT distinct c.relname AS table_name FROM pg_class c"; + return F_SQL; } if (SQL_SERVER.equals(var0)) { - return "select distinct c.name as table_name from sys.objects c"; + return H_SQL; } } @@ -122,19 +122,19 @@ public class SqlUtil { public static String b(String var0, String... var1) { if (oConvertUtils.isNotEmpty(var0)) { if (MYSQL.equals(var0)) { - return MessageFormat.format("select column_name from information_schema.columns where table_name = {0} and table_schema = {1}", var1); + return MessageFormat.format(I_SQL, var1); } if (ORACLE.equals(var0)) { - return MessageFormat.format("select column_name from all_tab_columns where table_name ={0}", var1); + return MessageFormat.format(K_SQL, var1); } if (POST_GRE_SQL.equals(var0)) { - return MessageFormat.format("select table_name from information_schema.columns where table_name = {0}", var1); + return MessageFormat.format(J_SQL, var1); } if (SQL_SERVER.equals(var0)) { - return MessageFormat.format("select name from syscolumns where id={0}", var1); + return MessageFormat.format(L_SQL, var1); } } @@ -176,15 +176,15 @@ public class SqlUtil { String var5 = ""; String var6 = ""; - for(Object var7; var3.hasNext(); var2.put(var5, var6)) { - Entry var4 = var3.next(); - var5 = (String)var4.getKey(); + for(String[] var7; var3.hasNext(); var2.put(var5, var6)) { + Entry var4 = var3.next(); + var5 = var4.getKey(); var7 = var4.getValue(); if (!"_t".equals(var5) && null != var7) { if (!(var7 instanceof String[])) { - var6 = var7.toString(); + var6 = Arrays.toString(var7); } else { - String[] var8 = (String[])var7; + String[] var8 = var7; for(int var9 = 0; var9 < var8.length; ++var9) { var6 = var8[var9] + ","; }