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);