From b4ba324df408dc5f64b6f767b71ea9cfc870e5f0 Mon Sep 17 00:00:00 2001
From: jinlin <jinlin>
Date: 星期三, 08 十一月 2023 17:09:00 +0800
Subject: [PATCH] Changes
---
zt/core/src/main/java/com/zt/generator/data/DBUtil.java | 50 +++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 41 insertions(+), 9 deletions(-)
diff --git a/zt/core/src/main/java/com/zt/generator/data/DBUtil.java b/zt/core/src/main/java/com/zt/generator/data/DBUtil.java
index d9d6eca..bf5686f 100644
--- a/zt/core/src/main/java/com/zt/generator/data/DBUtil.java
+++ b/zt/core/src/main/java/com/zt/generator/data/DBUtil.java
@@ -6,10 +6,8 @@
import org.springframework.jdbc.core.JdbcTemplate;
-import java.sql.Connection;
-import java.sql.DatabaseMetaData;
-import java.sql.ResultSet;
-import java.sql.SQLException;
+import java.sql.*;
+import java.util.HashMap;
import java.util.Map;
public class DBUtil {
@@ -18,7 +16,7 @@
try {
DatabaseMetaData dbm = conn.getMetaData();
String currentCatalog = conn.getCatalog();
- String[] types = { "TABLE" };
+ String[] types = {"TABLE"};
ResultSet tabs = dbm.getTables(currentCatalog, null, tableName, types);
if (tabs.next()) {
return true;
@@ -28,26 +26,60 @@
}
return false;
}
+ public static DataTable getTableList(Connection conn, boolean closeFlag) {
+ try {
+ DatabaseMetaData dbm = conn.getMetaData();
+ String currentCatalog = conn.getCatalog();
+ ResultSet rs = dbm.getTables(currentCatalog, null, null, null);
+ DataTable dt = new DataTable(rs);
+ return dt;
+ } catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ if (closeFlag && conn != null) {
+ try {
+ conn.close();
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ return null;
+ }
public static DataTable getColumnInfo(Connection conn, String tableName, boolean closeFlag) {
try {
DatabaseMetaData dbm = conn.getMetaData();
String currentCatalog = conn.getCatalog();
+
+ Map<String, String> mapDict = new HashMap<>();
+ String sql = "SELECT * FROM sys_dict_type WHERE is_delete=0";
+ PreparedStatement preparedStatement = conn.prepareStatement(sql);
+ ResultSet resultSet = preparedStatement.executeQuery();
+ while (resultSet.next()) {
+ String dictType = resultSet.getString("DICT_TYPE");
+ mapDict.put(dictType, dictType);
+ }
+
ResultSet rs = dbm.getColumns(currentCatalog, null, tableName, null);
-
DataTable dt = new DataTable(rs);
-
- rs = dbm.getPrimaryKeys(currentCatalog, null, tableName);
DataTable keyDt = new DataTable(rs);
Map map = keyDt.toMap("Column_Name", "PK_Name");
dt.insertColumn("isKey");
+ dt.insertColumn("dictType");
for (int i = 0; i < dt.getRowCount(); i++) {
DataRow dr = dt.getDataRow(i);
- if (map.containsKey(dr.getString("Column_Name"))) {
+ String columnName = dr.getString("Column_Name");
+ if (map.containsKey(columnName)) {
dr.set("isKey", "Y");
} else {
dr.set("isKey", "N");
}
+ if (mapDict.get(columnName) != null) {
+ dr.set("dictType", columnName);
+ } else {
+ dr.set("dictType", "");
+ }
}
return dt;
} catch (Exception e) {
--
Gitblit v1.9.1