From 757f91bc3be1736cb0baf99f04e0ba42e5540bb3 Mon Sep 17 00:00:00 2001 From: Yueng <14617246+YuengMeYuuer@user.noreply.gitee.com> Date: Fri, 6 Sep 2024 01:08:17 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B5=84=E4=BA=A7=E5=90=8E=E5=8F=B0=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E6=98=A0=E5=B0=84=E7=B1=BB=E5=9E=8B=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/DataRunNameServiceImpl.java | 48 ++++++++++++------- 1 file changed, 30 insertions(+), 18 deletions(-) diff --git a/cloud-property-server/src/main/java/com/muyu/server/service/impl/DataRunNameServiceImpl.java b/cloud-property-server/src/main/java/com/muyu/server/service/impl/DataRunNameServiceImpl.java index 714fc65..b6e05a4 100644 --- a/cloud-property-server/src/main/java/com/muyu/server/service/impl/DataRunNameServiceImpl.java +++ b/cloud-property-server/src/main/java/com/muyu/server/service/impl/DataRunNameServiceImpl.java @@ -21,9 +21,7 @@ import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.sql.*; -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; +import java.util.*; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; @@ -366,26 +364,40 @@ public class DataRunNameServiceImpl implements DataRunNameService { ResultSetMetaData metaData = resultSet.getMetaData(); int columnCount = metaData.getColumnCount(); - + HashMap map = new HashMap<>(); while (resultSet.next()){ for (int i = 1; i <= columnCount; i++) { - String columnTypeName = metaData.getColumnTypeName(i); - DatabaseMetaData metaData1 = conn.getMetaData(); - ResultSet columns = metaData1.getColumns(null, null, metaData.getTableName(i), metaData.getColumnName(i)); - String remarks =null; - while (columns.next()){ - remarks = columns.getString("REMARKS"); + if (resultSet.isFirst()){ + String columnTypeName = metaData.getColumnTypeName(i); - log.info("字段备注:{}", remarks); + DatabaseMetaData metaData1 = conn.getMetaData(); + ResultSet columns = metaData1.getColumns(null, null, metaData.getTableName(i), metaData.getColumnName(i)); + String remarks =null; + while (columns.next()){ + remarks = columns.getString("REMARKS"); + log.info("字段备注:{}", remarks); + } + + + DataValue build = DataValue.builder() + .key(metaData.getColumnName(i)) + .label(remarks) + .value(resultSet.getObject(i, DataType.convertType(columnTypeName))) + .type(DataType.convertTypeString(columnTypeName)) + .build(); + list.add(build); + map.put(i, build); + }else { + DataValue build = DataValue.builder() + .key(metaData.getColumnName(i)) + .label(map.get(i).getLabel()) + .value(resultSet.getObject(i, DataType.convertType((String) map.get(i).getValue()))) + .type(DataType.convertTypeString(map.get(i).getType())) + .build(); + list.add(build); } - DataValue build = DataValue.builder() - .key(metaData.getColumnName(i)) - .label(remarks) - .value(resultSet.getObject(i, DataType.convertType(columnTypeName))) - .type(DataType.convertTypeString(columnTypeName)) - .build(); - list.add(build); + } } JdbcHelper.close(null,preparedStatement,null);