From b71c23beeaa51b27b93cdf77b2a7038b158a000b Mon Sep 17 00:00:00 2001 From: Yueng <14617246+YuengMeYuuer@user.noreply.gitee.com> Date: Fri, 6 Sep 2024 16:48:18 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B5=84=E4=BA=A7=E5=B1=95=E7=A4=BA=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E5=90=8E=E5=8F=B0=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../server/data/mysql/MySqlDataSource.java | 22 ++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/cloud-property-server/src/main/java/com/muyu/server/data/mysql/MySqlDataSource.java b/cloud-property-server/src/main/java/com/muyu/server/data/mysql/MySqlDataSource.java index d8c3f86..2fdfc30 100644 --- a/cloud-property-server/src/main/java/com/muyu/server/data/mysql/MySqlDataSource.java +++ b/cloud-property-server/src/main/java/com/muyu/server/data/mysql/MySqlDataSource.java @@ -7,6 +7,8 @@ import com.muyu.common.domain.enums.DataType; import com.muyu.server.data.base.BaseDataAbsSource; import java.sql.*; +import java.util.ArrayList; +import java.util.List; import java.util.Map; @@ -32,15 +34,25 @@ public class MySqlDataSource extends BaseDataAbsSource String sql = query.getSql(); Map queryParams = query.getParams(); Connection connection=null; + List dataValueList = new ArrayList<>(); try { PreparedStatement preparedStatement = connection.prepareStatement(sql); ResultSet resultSet = preparedStatement.getResultSet(); + + ResultSetMetaData metaData = resultSet.getMetaData(); + int columnCount = metaData.getColumnCount(); while (resultSet.next()){ - DataValue.builder() - .key(resultSet.getCursorName()) - .label("") - .value(resultSet.getObject(1, String.class)) - .build(); + for (int i = 0; i < columnCount; i++) { + String columnTypeName = metaData.getColumnTypeName(i); + // 构建DataValue对象 + DataValue build = DataValue.builder() + .key(resultSet.getCursorName())// 使用游标的名称作为键 + .label("")// 标签为空 + .value(resultSet.getObject(resultSet.getCursorName(), DataType.convertType(columnTypeName))) +// .type("" +"String");// 数据类型为String + .build(); + dataValueList.add(build); + } } } catch (SQLException e) { throw new RuntimeException(e);