find:()新增抽取数据环境池
parent
5351bea0a0
commit
697285a179
|
@ -21,7 +21,7 @@ import java.util.function.Supplier;
|
|||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@TableName(value = "data_source")
|
||||
@TableName(value = "core_data")
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class CoreDataList {
|
||||
|
@ -55,7 +55,7 @@ public class CoreDataList {
|
|||
/**
|
||||
* 手机号
|
||||
*/
|
||||
private String mobile;
|
||||
private String telePhone;
|
||||
|
||||
/**
|
||||
* 身份证号
|
||||
|
@ -84,7 +84,7 @@ public class CoreDataList {
|
|||
.gender(dataSourceLists.getGender())
|
||||
.birthday(dataSourceLists.getBirthday())
|
||||
.address(dataSourceLists.getAddress())
|
||||
.mobile(dataSourceLists.getMobile())
|
||||
.telePhone(dataSourceLists.getTelePhone())
|
||||
.idCard(dataSourceLists.getIdCard())
|
||||
.email(dataSourceLists.getEmail())
|
||||
.credit(dataSourceLists.getCredit())
|
||||
|
|
|
@ -0,0 +1,33 @@
|
|||
package com.muyu.common.domain.data.base;
|
||||
|
||||
/**
|
||||
* @Author:zhangzhihao
|
||||
* @name:BaseConfig
|
||||
* @Date:2024/8/22 17:03
|
||||
* 不准抄代码,添加注释,清楚每一行代码意思
|
||||
*/
|
||||
public class BaseConfig {
|
||||
/**
|
||||
* mysql连接前缀
|
||||
*/
|
||||
public static final String MYSQLJDBCPRO="jdbc:mysql://";
|
||||
public static final String ORACLEJDBCPRO="jdbc:oracle:thin:@";
|
||||
public static final String SHOWTABLES="show TABLES";
|
||||
public static final String SELECTCOUNT="SELECT count(1) as count FROM ";
|
||||
public static final String SHOW_FULL_FIELDS_FROM="SHOW FULL FIELDS FROM ";
|
||||
public static final String SELECT="select ";
|
||||
public static final String SELECTALL="select * from ";
|
||||
public static final String FROM=" from ";
|
||||
|
||||
|
||||
|
||||
|
||||
public static void driver(String driverName){
|
||||
try {
|
||||
Class.forName(driverName);
|
||||
} catch (ClassNotFoundException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
package com.muyu.server.data.base;
|
||||
package com.muyu.common.domain.data.base;
|
||||
|
||||
/**
|
||||
* @Author:
|
|
@ -1,4 +1,4 @@
|
|||
package com.muyu.server.data.base;
|
||||
package com.muyu.common.domain.data.base;
|
||||
|
||||
|
||||
import com.muyu.common.domain.DataValue;
|
|
@ -1,4 +1,4 @@
|
|||
package com.muyu.server.data.base;
|
||||
package com.muyu.common.domain.data.base;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
|
@ -1,4 +1,4 @@
|
|||
package com.muyu.server.data.base;
|
||||
package com.muyu.common.domain.data.base;
|
||||
|
||||
|
||||
/**
|
|
@ -1,8 +1,8 @@
|
|||
package com.muyu.server.data.redis;
|
||||
package com.muyu.common.domain.data.redis;
|
||||
|
||||
|
||||
import com.muyu.common.domain.DataValue;
|
||||
import com.muyu.server.data.base.BaseDataAbsSource;
|
||||
import com.muyu.common.domain.data.base.BaseDataAbsSource;
|
||||
|
||||
/**
|
||||
* @Author:
|
|
@ -1,7 +1,7 @@
|
|||
package com.muyu.server.data.redis;
|
||||
package com.muyu.common.domain.data.redis;
|
||||
|
||||
|
||||
import com.muyu.server.data.base.BaseQuery;
|
||||
import com.muyu.common.domain.data.base.BaseQuery;
|
||||
|
||||
/**
|
||||
* @Author:
|
|
@ -1,5 +1,7 @@
|
|||
package com.muyu.common.domain.req;
|
||||
|
||||
import com.muyu.common.domain.Connect;
|
||||
import com.muyu.common.domain.data.base.BaseConfig;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
@ -27,6 +29,53 @@ public class ConnectReq {
|
|||
/**
|
||||
* 连接地址
|
||||
*/
|
||||
private final String URL = "jdbc:mysql://";
|
||||
private final String Url = "jdbc:mysql://";
|
||||
|
||||
/**
|
||||
* 账号
|
||||
*/
|
||||
private final String USER = "root";
|
||||
|
||||
/**
|
||||
* 密码
|
||||
*/
|
||||
private final String PWD = "Bwie-8666";
|
||||
|
||||
/**
|
||||
* 获取mysql数据库连接
|
||||
* @return
|
||||
*/
|
||||
public String getUrl(Connect connect){
|
||||
StringBuilder urlSb = new StringBuilder(BaseConfig.MYSQLJDBCPRO);
|
||||
//拼接ip
|
||||
urlSb.append(connect.getIpAddress());
|
||||
urlSb.append(":");
|
||||
//拼接端口
|
||||
urlSb.append(connect.getPort());
|
||||
urlSb.append("/");
|
||||
//拼接数据库
|
||||
urlSb.append(connect.getDatabaseName());
|
||||
urlSb.append("?");
|
||||
//useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
|
||||
urlSb.append(connect.getDataConnParam());
|
||||
return urlSb.toString();
|
||||
}
|
||||
/**
|
||||
* 获取mysql数据库连接
|
||||
* @return
|
||||
*/
|
||||
public String getOracleUrl(Connect connect){
|
||||
|
||||
StringBuilder urlSb = new StringBuilder(BaseConfig.ORACLEJDBCPRO);
|
||||
//拼接ip
|
||||
urlSb.append(connect.getIpAddress());
|
||||
urlSb.append(":");
|
||||
//拼接端口
|
||||
urlSb.append(connect.getPort());
|
||||
urlSb.append(":");
|
||||
//PDB
|
||||
urlSb.append(connect.getDataConnParam());
|
||||
return urlSb.toString();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -2,8 +2,8 @@ package com.muyu.server;
|
|||
|
||||
|
||||
|
||||
import com.muyu.server.data.mysql.MySqlDataSource;
|
||||
import com.muyu.server.data.mysql.MySqlQuery;
|
||||
import com.muyu.server.mysql.MySqlDataSource;
|
||||
import com.muyu.server.mysql.MySqlQuery;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
|
|
|
@ -1,10 +1,14 @@
|
|||
package com.muyu.server.controller;
|
||||
|
||||
import com.muyu.common.core.domain.Result;
|
||||
import com.muyu.common.domain.CoreDataList;
|
||||
import com.muyu.common.domain.DataValue;
|
||||
import com.muyu.server.service.DataLinkService;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
*@Author:yang
|
||||
*@Package:com.muyu.server.controller
|
||||
|
@ -31,4 +35,21 @@ public class DataLinkController {
|
|||
return Result.success(longs);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询表数据dashuju表
|
||||
* @param dataName 数据库名称
|
||||
* @param sql sql语句
|
||||
* @return 反护试图
|
||||
*/
|
||||
@PostMapping("/findSelectDataList")
|
||||
public Result<DataValue[][]> findSelectDataList(
|
||||
@RequestParam("dataName") String dataName,
|
||||
@RequestParam("sql") String sql,
|
||||
@RequestParam("dataTableName") String dataTableName,
|
||||
@RequestParam("one") Long one,
|
||||
@RequestParam("two") Integer two){
|
||||
DataValue[][] longs = dataLinkService.findSelectDataList(dataName,sql,dataTableName,one,two);
|
||||
return Result.success(longs);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,74 +0,0 @@
|
|||
package com.muyu.server.data.mysql;
|
||||
|
||||
|
||||
|
||||
import com.muyu.common.domain.DataValue;
|
||||
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;
|
||||
|
||||
|
||||
/**
|
||||
* @Author:
|
||||
* @Package:com.muyu.etl.property.mysql
|
||||
* @Project:cloud-etl-property
|
||||
* @name:MysqlDataSource
|
||||
* @Date:2024/8/29 16:04
|
||||
*
|
||||
* mysql数据源
|
||||
*/
|
||||
|
||||
|
||||
public class MySqlDataSource extends BaseDataAbsSource
|
||||
{
|
||||
|
||||
|
||||
@Override
|
||||
public DataValue getDateValue() {
|
||||
MySqlQuery query = getQuery();
|
||||
query.getDataSourceId();
|
||||
String sql = query.getSql();
|
||||
Map<String, Object> queryParams = query.getParams();
|
||||
Connection connection=null;
|
||||
List<DataValue> dataValueList = new ArrayList<>();
|
||||
try {
|
||||
PreparedStatement preparedStatement = connection.prepareStatement(sql);
|
||||
ResultSet resultSet = preparedStatement.getResultSet();
|
||||
|
||||
ResultSetMetaData metaData = resultSet.getMetaData();
|
||||
int columnCount = metaData.getColumnCount();
|
||||
while (resultSet.next()){
|
||||
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);
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public DataValue[] getRow() {
|
||||
return new DataValue[0];
|
||||
}
|
||||
|
||||
@Override
|
||||
public DataValue[][] fetRows() {
|
||||
return new DataValue[0][];
|
||||
}
|
||||
|
||||
}
|
|
@ -2,7 +2,9 @@ package com.muyu.server.mapper;
|
|||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.muyu.common.domain.Connect;
|
||||
import com.muyu.common.domain.DataName;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
/**
|
||||
* @Author:yang
|
||||
|
@ -13,4 +15,5 @@ import org.apache.ibatis.annotations.Mapper;
|
|||
*/
|
||||
@Mapper
|
||||
public interface ConnectMapper extends BaseMapper<Connect> {
|
||||
Connect selectData(@Param("dataName") String dataName);
|
||||
}
|
||||
|
|
|
@ -0,0 +1,163 @@
|
|||
package com.muyu.server.mysql;
|
||||
|
||||
|
||||
|
||||
import com.muyu.common.core.utils.SpringUtils;
|
||||
import com.muyu.common.domain.Connect;
|
||||
import com.muyu.common.domain.DataValue;
|
||||
import com.muyu.common.domain.enums.DataType;
|
||||
import com.muyu.common.domain.req.ConnectReq;
|
||||
import com.muyu.common.domain.data.base.BaseDataAbsSource;
|
||||
import com.muyu.server.service.ConnectService;
|
||||
import com.zaxxer.hikari.HikariConfig;
|
||||
import com.zaxxer.hikari.HikariDataSource;
|
||||
import lombok.extern.log4j.Log4j2;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.sql.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
|
||||
|
||||
/**
|
||||
* @Author:
|
||||
* @Package:com.muyu.etl.property.mysql
|
||||
* @Project:cloud-etl-property
|
||||
* @name:MysqlDataSource
|
||||
* @Date:2024/8/29 16:04
|
||||
*
|
||||
* mysql数据源
|
||||
*/
|
||||
|
||||
@Component
|
||||
@Log4j2
|
||||
public class MySqlDataSource extends BaseDataAbsSource
|
||||
{
|
||||
ConnectService connectService = SpringUtils.getBean(ConnectService.class);
|
||||
|
||||
@Override
|
||||
public DataValue getDateValue() {
|
||||
MySqlQuery query = getQuery();
|
||||
query.getDataSourceId();
|
||||
String sql = query.getSql();
|
||||
Map<String, Object> queryParams = query.getParams();
|
||||
Connection connection=null;
|
||||
List<DataValue> dataValueList = new ArrayList<>();
|
||||
try {
|
||||
PreparedStatement preparedStatement = connection.prepareStatement(sql);
|
||||
ResultSet resultSet = preparedStatement.getResultSet();
|
||||
|
||||
ResultSetMetaData metaData = resultSet.getMetaData();
|
||||
int columnCount = metaData.getColumnCount();
|
||||
while (resultSet.next()){
|
||||
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);
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public DataValue[] getRow() {
|
||||
return new DataValue[0];
|
||||
}
|
||||
|
||||
@Override
|
||||
public DataValue[][] fetRows() {
|
||||
return new DataValue[0][];
|
||||
}
|
||||
|
||||
public DataValue[][] getSqlDataSource() {
|
||||
|
||||
MySqlQuery query = getQuery();
|
||||
String dataName = query.getDataName();
|
||||
String dataTableName = query.getDataTableName();
|
||||
Integer one = Math.toIntExact(query.getOne());
|
||||
Integer two = query.getTwo();
|
||||
String sql = query.getSql();
|
||||
ConcurrentHashMap<Integer, DataValue> map = new ConcurrentHashMap<>();
|
||||
|
||||
Connect connect = connectService.selectData(dataName);
|
||||
ConnectReq connectReq = new ConnectReq();
|
||||
HikariConfig hikariConfig = new HikariConfig();
|
||||
hikariConfig.setPoolName("HikariCP 连接池");
|
||||
hikariConfig.setDriverClassName(connectReq.getDRIVER());
|
||||
// 修正这里
|
||||
hikariConfig.setJdbcUrl(connectReq.getUrl(connect));
|
||||
hikariConfig.setUsername(connectReq.getUSER());
|
||||
hikariConfig.setPassword(connectReq.getPWD());
|
||||
hikariConfig.setMinimumIdle(2);
|
||||
hikariConfig.setMaximumPoolSize(10);
|
||||
|
||||
DataValue[][] dataValues = new DataValue[one][two];
|
||||
|
||||
HikariDataSource hikariDataSource = new HikariDataSource(hikariConfig);
|
||||
try {
|
||||
Connection conn = hikariDataSource.getConnection();
|
||||
PreparedStatement preparedStatement = conn.prepareStatement(sql);
|
||||
ResultSet resultSet = preparedStatement.executeQuery();
|
||||
ResultSetMetaData metaData = resultSet.getMetaData();
|
||||
int columnCount = metaData.getColumnCount();
|
||||
int c = 0;
|
||||
while (resultSet.next()){
|
||||
for (int i = 1; i <= columnCount; i++) {
|
||||
if (resultSet.isFirst()){
|
||||
String columnTypeName = metaData.getColumnTypeName(i);
|
||||
DatabaseMetaData metaDataColumns = conn.getMetaData();
|
||||
ResultSet columns = metaDataColumns.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.findBySqlType(columnTypeName))
|
||||
.build();
|
||||
map.put(i,build);
|
||||
dataValues[c][i-1]=build;
|
||||
}else {
|
||||
DataValue build = DataValue.builder()
|
||||
.key(metaData.getColumnName(i))
|
||||
.label(map.get(i).getLabel())
|
||||
.value(resultSet.getObject(i, map.get(i).getType().getTargetType()))
|
||||
.type(map.get(i).getType())
|
||||
.build();
|
||||
dataValues[c][i-1]=build;
|
||||
}
|
||||
}
|
||||
c++;
|
||||
}
|
||||
|
||||
} catch (SQLException e) {
|
||||
throw new RuntimeException(e);
|
||||
}finally {
|
||||
close(hikariDataSource); // 关闭数据源
|
||||
}
|
||||
|
||||
return dataValues;
|
||||
}
|
||||
private static void close(HikariDataSource dataSource) {
|
||||
if (dataSource != null) {
|
||||
dataSource.close();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
package com.muyu.server.data.mysql;
|
||||
package com.muyu.server.mysql;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
@ -24,7 +24,13 @@ public class MySqlQuery
|
|||
|
||||
private String dataSourceId;
|
||||
|
||||
private String dataTableName;
|
||||
|
||||
private String dataName;
|
||||
|
||||
private String sql;
|
||||
private Long one;
|
||||
private Integer two;
|
||||
|
||||
private Map<String ,Object> params;
|
||||
}
|
|
@ -2,6 +2,7 @@ package com.muyu.server.service;
|
|||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.muyu.common.domain.Connect;
|
||||
import com.muyu.common.domain.DataName;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
@ -40,4 +41,11 @@ public interface ConnectService extends IService<Connect> {
|
|||
* @return 返回结果
|
||||
*/
|
||||
boolean text(Connect connect);
|
||||
|
||||
/**
|
||||
* 测试接口
|
||||
* @param dataName 响应名称
|
||||
* @return 返回结果
|
||||
*/
|
||||
Connect selectData(String dataName);
|
||||
}
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
package com.muyu.server.service;
|
||||
|
||||
import com.muyu.common.domain.DataValue;
|
||||
|
||||
/**
|
||||
*@Author:yang
|
||||
*@Package:com.muyu.server.service
|
||||
|
@ -16,4 +18,15 @@ public interface DataLinkService {
|
|||
* @return 反护试图
|
||||
*/
|
||||
public Long findCount(String dataName, String sql);
|
||||
|
||||
/**
|
||||
* 查询表数据dashuju表
|
||||
*
|
||||
* @param dataName 数据库名称
|
||||
* @param sql sql语句
|
||||
* @param one
|
||||
* @param two
|
||||
* @return 反护试图
|
||||
*/
|
||||
DataValue[][] findSelectDataList(String dataName, String sql, String dataTableName, Long one, Integer two);
|
||||
}
|
||||
|
|
|
@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.muyu.common.core.enums.SystemYesNo;
|
||||
import com.muyu.common.domain.Connect;
|
||||
import com.muyu.common.domain.DataName;
|
||||
import com.muyu.server.mapper.ConnectMapper;
|
||||
import com.muyu.server.service.ConnectService;
|
||||
import com.muyu.server.service.OrderConnectService;
|
||||
|
@ -29,6 +30,7 @@ public class ConnectServiceImpl
|
|||
implements ConnectService {
|
||||
|
||||
private final OrderConnectService orderConnectService;
|
||||
private final ConnectMapper connectMapper;
|
||||
|
||||
|
||||
|
||||
|
@ -97,6 +99,11 @@ public class ConnectServiceImpl
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public Connect selectData(String dataName) {
|
||||
return connectMapper.selectData(dataName);
|
||||
}
|
||||
|
||||
private boolean settingStatus(Integer id, String initialization) {
|
||||
return this.updateById(
|
||||
Connect.builder()
|
||||
|
|
|
@ -45,10 +45,6 @@ public class CoreDataListServiceImpl
|
|||
StringUtils.isNotEmpty(dataSourceList.getAddress()),
|
||||
CoreDataList::getAddress, dataSourceList.getAddress()
|
||||
);
|
||||
queryWrapper.eq(
|
||||
StringUtils.isNotEmpty(dataSourceList.getMibile()),
|
||||
CoreDataList::getMobile, dataSourceList.getMibile()
|
||||
);
|
||||
List<CoreDataList> dataSourceListList = this.list(queryWrapper);
|
||||
return dataSourceListList.stream()
|
||||
.map(
|
||||
|
|
|
@ -2,9 +2,11 @@ package com.muyu.server.service.impl;
|
|||
|
||||
import com.alibaba.druid.pool.DruidDataSource;
|
||||
import com.alibaba.druid.pool.DruidPooledConnection;
|
||||
import com.muyu.common.domain.DataValue;
|
||||
import com.muyu.server.mysql.MySqlDataSource;
|
||||
import com.muyu.server.mysql.MySqlQuery;
|
||||
import com.muyu.server.service.DataLinkService;
|
||||
import com.muyu.server.util.JdbcHelper;
|
||||
import lombok.extern.log4j.Log4j;
|
||||
import lombok.extern.log4j.Log4j2;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
@ -46,4 +48,18 @@ public class DataLinkServiceImpl implements DataLinkService {
|
|||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public DataValue[][] findSelectDataList(String dataName, String sql, String dataTableName, Long one, Integer two) {
|
||||
|
||||
MySqlQuery mySqlQuery = new MySqlQuery();
|
||||
mySqlQuery.setSql(sql);
|
||||
mySqlQuery.setDataName(dataName);
|
||||
mySqlQuery.setDataTableName(dataTableName);
|
||||
mySqlQuery.setOne(one);
|
||||
mySqlQuery.setTwo(two);
|
||||
MySqlDataSource mySqlDataSource = new MySqlDataSource();
|
||||
DataValue[][] rows = mySqlDataSource.getSqlDataSource();
|
||||
return rows;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -10,7 +10,7 @@ import com.muyu.common.security.utils.SecurityUtils;
|
|||
import com.muyu.common.system.domain.LoginUser;
|
||||
import com.muyu.common.system.domain.SysDept;
|
||||
import com.muyu.common.system.domain.SysUser;
|
||||
import com.muyu.server.data.mysql.MySqlQuery;
|
||||
import com.muyu.server.mysql.MySqlQuery;
|
||||
import com.muyu.server.mapper.DataRunNameMapper;
|
||||
import com.muyu.server.service.*;
|
||||
import com.muyu.server.util.JdbcHelper;
|
||||
|
|
|
@ -29,7 +29,7 @@ public class JdbcHelper {
|
|||
try {
|
||||
DruidDataSource druidDataSource = new DruidDataSource();
|
||||
String dcp = connect.getDataConnParam();
|
||||
druidDataSource.setUrl(new ConnectReq().getURL()
|
||||
druidDataSource.setUrl(new ConnectReq().getUrl()
|
||||
+connect.getIpAddress()+":"+connect.getPort()+
|
||||
"/"+connect.getDatabaseName() +
|
||||
(dcp != null && !dcp.isEmpty()? "?" + dcp : ""));
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.muyu.server.mapper.ConnectMapper">
|
||||
|
||||
<select id="selectData" resultType="com.muyu.common.domain.Connect">
|
||||
select *
|
||||
from connect where name=#{dataName};
|
||||
</select>
|
||||
</mapper>
|
|
@ -26,3 +26,75 @@
|
|||
09:21:38.998 [com.alibaba.nacos.client.remote.worker.0] INFO c.a.n.c.c.i.ClientWorker - [onConnected,713] - [3a09ddda-aaf8-4ac1-ba90-27dc507c9d9a_config-0] Connected,notify listen context...
|
||||
09:21:41.420 [main] INFO c.a.d.p.DruidDataSource - [init,1002] - {dataSource-1,master} inited
|
||||
09:21:41.424 [main] INFO o.a.c.c.StandardService - [log,173] - Stopping service [Tomcat]
|
||||
09:26:51.438 [main] INFO c.m.s.IntegrationApplication - [logStartupProfileInfo,660] - The following 1 profile is active: "dev"
|
||||
09:26:53.239 [main] INFO o.a.c.c.StandardService - [log,173] - Starting service [Tomcat]
|
||||
09:26:53.240 [main] INFO o.a.c.c.StandardEngine - [log,173] - Starting Servlet engine: [Apache Tomcat/10.1.24]
|
||||
09:26:53.295 [main] INFO o.a.c.c.C.[.[.[/] - [log,173] - Initializing Spring embedded WebApplicationContext
|
||||
09:26:56.698 [main] INFO c.a.d.p.DruidDataSource - [init,1002] - {dataSource-1,master} inited
|
||||
09:26:56.699 [main] INFO c.b.d.d.DynamicRoutingDataSource - [addDataSource,158] - dynamic-datasource - add a datasource named [master] success
|
||||
09:26:56.699 [main] INFO c.b.d.d.DynamicRoutingDataSource - [afterPropertiesSet,241] - dynamic-datasource initial loaded [1] datasource,primary datasource named [master]
|
||||
09:26:57.623 [main] INFO c.a.c.s.SentinelWebMvcConfigurer - [addInterceptors,52] - [Sentinel Starter] register SentinelWebInterceptor with urlPatterns: [/**].
|
||||
09:27:01.822 [main] INFO c.m.r.RabbitConfig - [init,29] - rabbitMQ启动成功
|
||||
09:27:05.009 [main] INFO c.a.n.client.naming - [initNamespaceForNaming,62] - initializer namespace from ans.namespace attribute : null
|
||||
09:27:05.010 [main] INFO c.a.n.client.naming - [lambda$initNamespaceForNaming$0,66] - initializer namespace from ALIBABA_ALIWARE_NAMESPACE attribute :null
|
||||
09:27:05.010 [main] INFO c.a.n.client.naming - [lambda$initNamespaceForNaming$1,73] - initializer namespace from namespace attribute :null
|
||||
09:27:05.015 [main] INFO c.a.n.client.naming - [<init>,74] - FailoverDataSource type is class com.alibaba.nacos.client.naming.backups.datasource.DiskFailoverDataSource
|
||||
09:27:05.018 [main] INFO c.a.n.p.a.s.c.ClientAuthPluginManager - [init,56] - [ClientAuthPluginManager] Load ClientAuthService com.alibaba.nacos.client.auth.impl.NacosClientAuthServiceImpl success.
|
||||
09:27:05.018 [main] INFO c.a.n.p.a.s.c.ClientAuthPluginManager - [init,56] - [ClientAuthPluginManager] Load ClientAuthService com.alibaba.nacos.client.auth.ram.RamClientAuthServiceImpl success.
|
||||
09:27:05.179 [main] INFO c.a.n.c.r.client - [lambda$createClient$0,118] - [RpcClientFactory] create a new rpc client of a6dd6a37-b3eb-41ba-be5c-4c6619958c35
|
||||
09:27:05.181 [main] INFO c.a.n.client.naming - [<init>,109] - Create naming rpc client for uuid->a6dd6a37-b3eb-41ba-be5c-4c6619958c35
|
||||
09:27:05.182 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [a6dd6a37-b3eb-41ba-be5c-4c6619958c35] RpcClient init, ServerListFactory = com.alibaba.nacos.client.naming.core.ServerListManager
|
||||
09:27:05.182 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [a6dd6a37-b3eb-41ba-be5c-4c6619958c35] Registry connection listener to current client:com.alibaba.nacos.client.naming.remote.gprc.redo.NamingGrpcRedoService
|
||||
09:27:05.182 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [a6dd6a37-b3eb-41ba-be5c-4c6619958c35] Register server push request handler:com.alibaba.nacos.client.naming.remote.gprc.NamingPushRequestHandler
|
||||
09:27:05.183 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [a6dd6a37-b3eb-41ba-be5c-4c6619958c35] Try to connect to server on start up, server: {serverIp = '21.12.0.8', server main port = 8848}
|
||||
09:27:05.183 [main] INFO c.a.n.c.r.c.g.GrpcClient - [createNewManagedChannel,210] - grpc client connection server:21.12.0.8 ip,serverPort:9848,grpcTslConfig:{"sslProvider":"","enableTls":false,"mutualAuthEnable":false,"trustAll":false}
|
||||
09:27:05.443 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [a6dd6a37-b3eb-41ba-be5c-4c6619958c35] Success to connect to server [21.12.0.8:8848] on start up, connectionId = 1725758825136_21.12.0.11_62214
|
||||
09:27:05.444 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [a6dd6a37-b3eb-41ba-be5c-4c6619958c35] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$ConnectResetRequestHandler
|
||||
09:27:05.444 [com.alibaba.nacos.client.remote.worker.0] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [a6dd6a37-b3eb-41ba-be5c-4c6619958c35] Notify connected event to listeners.
|
||||
09:27:05.444 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [a6dd6a37-b3eb-41ba-be5c-4c6619958c35] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$$Lambda$576/0x000001a4504f1b20
|
||||
09:27:05.444 [com.alibaba.nacos.client.remote.worker.0] INFO c.a.n.client.naming - [onConnected,90] - Grpc connection connect
|
||||
09:27:05.445 [main] INFO c.a.n.client.naming - [registerService,133] - [REGISTER-SERVICE] ec66ecf1-f28e-43bc-aa86-625f1bc53bf8 registering service cloud-property with instance Instance{instanceId='null', ip='192.168.97.139', port=9701, weight=1.0, healthy=true, enabled=true, ephemeral=true, clusterName='DEFAULT', serviceName='null', metadata={IPv6=null, preserved.register.source=SPRING_CLOUD}}
|
||||
09:27:05.507 [main] INFO c.a.c.n.r.NacosServiceRegistry - [register,76] - nacos registry, DEFAULT_GROUP cloud-property 192.168.97.139:9701 register finished
|
||||
09:27:06.649 [main] INFO c.m.s.IntegrationApplication - [logStarted,56] - Started IntegrationApplication in 20.267 seconds (process running for 20.961)
|
||||
09:27:06.659 [main] INFO c.a.n.c.c.i.CacheData - [initNotifyWarnTimeout,72] - config listener notify warn timeout millis use default 60000 millis
|
||||
09:27:06.659 [main] INFO c.a.n.c.c.i.CacheData - [<clinit>,99] - nacos.cache.data.init.snapshot = true
|
||||
09:27:06.660 [main] INFO c.a.n.c.c.i.ClientWorker - [addCacheDataIfAbsent,416] - [fixed-ec66ecf1-f28e-43bc-aa86-625f1bc53bf8-21.12.0.8_8848] [subscribe] cloud-property.yml+DEFAULT_GROUP+ec66ecf1-f28e-43bc-aa86-625f1bc53bf8
|
||||
09:27:06.669 [main] INFO c.a.n.c.c.i.CacheData - [addListener,236] - [fixed-ec66ecf1-f28e-43bc-aa86-625f1bc53bf8-21.12.0.8_8848] [add-listener] ok, tenant=ec66ecf1-f28e-43bc-aa86-625f1bc53bf8, dataId=cloud-property.yml, group=DEFAULT_GROUP, cnt=1
|
||||
09:27:06.669 [main] INFO c.a.c.n.r.NacosContextRefresher - [registerNacosListener,131] - [Nacos Config] Listening config: dataId=cloud-property.yml, group=DEFAULT_GROUP
|
||||
09:27:06.671 [main] INFO c.a.n.c.c.i.ClientWorker - [addCacheDataIfAbsent,416] - [fixed-ec66ecf1-f28e-43bc-aa86-625f1bc53bf8-21.12.0.8_8848] [subscribe] cloud-property+DEFAULT_GROUP+ec66ecf1-f28e-43bc-aa86-625f1bc53bf8
|
||||
09:27:06.671 [main] INFO c.a.n.c.c.i.CacheData - [addListener,236] - [fixed-ec66ecf1-f28e-43bc-aa86-625f1bc53bf8-21.12.0.8_8848] [add-listener] ok, tenant=ec66ecf1-f28e-43bc-aa86-625f1bc53bf8, dataId=cloud-property, group=DEFAULT_GROUP, cnt=1
|
||||
09:27:06.671 [main] INFO c.a.c.n.r.NacosContextRefresher - [registerNacosListener,131] - [Nacos Config] Listening config: dataId=cloud-property, group=DEFAULT_GROUP
|
||||
09:27:06.673 [main] INFO c.a.n.c.c.i.ClientWorker - [addCacheDataIfAbsent,416] - [fixed-ec66ecf1-f28e-43bc-aa86-625f1bc53bf8-21.12.0.8_8848] [subscribe] cloud-property-dev.yml+DEFAULT_GROUP+ec66ecf1-f28e-43bc-aa86-625f1bc53bf8
|
||||
09:27:06.673 [main] INFO c.a.n.c.c.i.CacheData - [addListener,236] - [fixed-ec66ecf1-f28e-43bc-aa86-625f1bc53bf8-21.12.0.8_8848] [add-listener] ok, tenant=ec66ecf1-f28e-43bc-aa86-625f1bc53bf8, dataId=cloud-property-dev.yml, group=DEFAULT_GROUP, cnt=1
|
||||
09:27:06.673 [main] INFO c.a.c.n.r.NacosContextRefresher - [registerNacosListener,131] - [Nacos Config] Listening config: dataId=cloud-property-dev.yml, group=DEFAULT_GROUP
|
||||
09:27:06.944 [RMI TCP Connection(5)-192.168.97.139] INFO o.a.c.c.C.[.[.[/] - [log,173] - Initializing Spring DispatcherServlet 'dispatcherServlet'
|
||||
09:28:27.157 [http-nio-9701-exec-1] INFO c.a.d.p.DruidDataSource - [init,1002] - {dataSource-2} inited
|
||||
09:34:25.532 [SpringApplicationShutdownHook] INFO c.a.c.n.r.NacosServiceRegistry - [deregister,95] - De-registering from Nacos Server now...
|
||||
09:34:25.532 [SpringApplicationShutdownHook] INFO c.a.n.client.naming - [deregisterService,272] - [DEREGISTER-SERVICE] ec66ecf1-f28e-43bc-aa86-625f1bc53bf8 deregistering service cloud-property with instance: Instance{instanceId='null', ip='192.168.97.139', port=9701, weight=1.0, healthy=true, enabled=true, ephemeral=true, clusterName='DEFAULT', serviceName='null', metadata={}}
|
||||
09:34:25.581 [SpringApplicationShutdownHook] INFO c.a.c.n.r.NacosServiceRegistry - [deregister,115] - De-registration finished.
|
||||
09:34:25.582 [SpringApplicationShutdownHook] INFO c.a.n.client.naming - [shutdown,254] - com.alibaba.nacos.client.naming.cache.ServiceInfoHolder do shutdown begin
|
||||
09:34:25.583 [SpringApplicationShutdownHook] INFO c.a.n.client.naming - [shutdown,180] - com.alibaba.nacos.client.naming.backups.FailoverReactor do shutdown begin
|
||||
09:34:25.583 [SpringApplicationShutdownHook] INFO c.a.n.client.naming - [shutdown,182] - com.alibaba.nacos.client.naming.backups.FailoverReactor do shutdown stop
|
||||
09:34:25.584 [SpringApplicationShutdownHook] INFO c.a.n.client.naming - [shutdown,256] - com.alibaba.nacos.client.naming.cache.ServiceInfoHolder do shutdown stop
|
||||
09:34:25.584 [SpringApplicationShutdownHook] INFO c.a.n.client.naming - [shutdown,204] - com.alibaba.nacos.client.naming.remote.NamingClientProxyDelegate do shutdown begin
|
||||
09:34:25.584 [SpringApplicationShutdownHook] INFO c.a.n.client.naming - [shutdown,147] - com.alibaba.nacos.client.naming.core.ServiceInfoUpdateService do shutdown begin
|
||||
09:34:25.585 [SpringApplicationShutdownHook] INFO c.a.n.client.naming - [shutdown,149] - com.alibaba.nacos.client.naming.core.ServiceInfoUpdateService do shutdown stop
|
||||
09:34:25.585 [SpringApplicationShutdownHook] INFO c.a.n.client.naming - [shutdown,218] - com.alibaba.nacos.client.naming.core.ServerListManager do shutdown begin
|
||||
09:34:25.585 [SpringApplicationShutdownHook] INFO c.a.n.client.naming - [shutdown,223] - com.alibaba.nacos.client.naming.core.ServerListManager do shutdown stop
|
||||
09:34:25.585 [SpringApplicationShutdownHook] INFO c.a.n.client.naming - [shutdown,468] - com.alibaba.nacos.client.naming.remote.http.NamingHttpClientProxy do shutdown begin
|
||||
09:34:25.585 [SpringApplicationShutdownHook] INFO c.a.n.client.naming - [shutdown,470] - com.alibaba.nacos.client.naming.remote.http.NamingHttpClientProxy do shutdown stop
|
||||
09:34:25.585 [SpringApplicationShutdownHook] INFO c.a.n.client.naming - [shutdown,487] - Shutdown naming grpc client proxy for uuid->a6dd6a37-b3eb-41ba-be5c-4c6619958c35
|
||||
09:34:25.586 [SpringApplicationShutdownHook] INFO c.a.n.client.naming - [shutdown,331] - Shutdown grpc redo service executor java.util.concurrent.ScheduledThreadPoolExecutor@6521f700[Running, pool size = 1, active threads = 0, queued tasks = 1, completed tasks = 146]
|
||||
09:34:25.586 [SpringApplicationShutdownHook] INFO c.a.n.c.r.client - [shutdown,425] - Shutdown rpc client, set status to shutdown
|
||||
09:34:25.586 [SpringApplicationShutdownHook] INFO c.a.n.c.r.client - [shutdown,427] - Shutdown client event executor java.util.concurrent.ScheduledThreadPoolExecutor@614ff3b6[Running, pool size = 2, active threads = 2, queued tasks = 0, completed tasks = 0]
|
||||
09:34:25.586 [SpringApplicationShutdownHook] INFO c.a.n.c.r.client - [closeConnection,584] - Close current connection 1725758825136_21.12.0.11_62214
|
||||
09:34:25.590 [SpringApplicationShutdownHook] INFO c.a.n.c.r.c.g.GrpcClient - [shutdown,187] - Shutdown grpc executor java.util.concurrent.ThreadPoolExecutor@167d77bb[Running, pool size = 3, active threads = 0, queued tasks = 0, completed tasks = 92]
|
||||
09:34:25.590 [SpringApplicationShutdownHook] INFO c.a.n.client.naming - [shutDownAndRemove,497] - shutdown and remove naming rpc client for uuid ->a6dd6a37-b3eb-41ba-be5c-4c6619958c35
|
||||
09:34:25.590 [SpringApplicationShutdownHook] INFO c.a.n.c.a.r.i.CredentialWatcher - [stop,107] - [null] CredentialWatcher is stopped
|
||||
09:34:25.591 [SpringApplicationShutdownHook] INFO c.a.n.c.a.r.i.CredentialService - [free,91] - [null] CredentialService is freed
|
||||
09:34:25.591 [SpringApplicationShutdownHook] INFO c.a.n.client.naming - [shutdown,211] - com.alibaba.nacos.client.naming.remote.NamingClientProxyDelegate do shutdown stop
|
||||
09:34:25.593 [SpringApplicationShutdownHook] INFO c.b.d.d.DynamicRoutingDataSource - [destroy,215] - dynamic-datasource start closing ....
|
||||
09:34:25.596 [SpringApplicationShutdownHook] INFO c.a.d.p.DruidDataSource - [close,2204] - {dataSource-1} closing ...
|
||||
09:34:25.602 [SpringApplicationShutdownHook] INFO c.a.d.p.DruidDataSource - [close,2277] - {dataSource-1} closed
|
||||
09:34:25.603 [SpringApplicationShutdownHook] INFO c.b.d.d.d.DefaultDataSourceDestroyer - [destroy,98] - dynamic-datasource close the datasource named [master] success,
|
||||
09:34:25.603 [SpringApplicationShutdownHook] INFO c.b.d.d.DynamicRoutingDataSource - [destroy,219] - dynamic-datasource all closed success,bye
|
||||
|
|
Loading…
Reference in New Issue