main
黄海 9 months ago
parent 4a0c1a60ff
commit b7984b6d3b

@ -1,13 +1,10 @@
package com.dsideal.base.Tools;
import com.dsideal.base.DataEase.Model.DataEaseModel;
import com.dsideal.base.Util.SSHConnector;
import com.jfinal.plugin.activerecord.ActiveRecordPlugin;
import com.dsideal.base.Tools.Util.SshConnectUtil;
import com.jcraft.jsch.JSchException;
import com.jfinal.plugin.activerecord.Record;
import com.jfinal.plugin.activerecord.dialect.MysqlDialect;
import com.jfinal.plugin.hikaricp.HikariCpPlugin;
import java.io.File;
import java.io.IOException;
import java.util.List;
@ -15,79 +12,32 @@ import com.jcraft.jsch.Session;
public class AddXzqh {
public static void main(String[] args) throws IOException {
//远程主机的SSH登录信息
String sshHost = "117.78.60.214";
int sshPort = 52025;
String sshUser = "root";
String sshPassword = "DsIdeal@123";
String mysqlHost = "127.0.0.1"; // MySQL server host
int mysqlPort = 3306; // MySQL server port
Session session = SSHConnector.createSSHSession(sshHost, sshPort, sshUser, sshPassword);
try {
int localPort = 33306; // Local port to forward to MySQL server
session.setPortForwardingL(localPort, mysqlHost, mysqlPort);
String jdbcUrl = "jdbc:mysql://localhost:" + localPort + "/ds_db";
public static void main(String[] args) throws IOException, JSchException {
Session session = SshConnectUtil.Init();
String user = "root";
String password = "Password123@mysql";
String driverClassName = "com.mysql.cj.jdbc.Driver";
DataEaseModel dm = new DataEaseModel();
HikariCpPlugin masterPlugin = new HikariCpPlugin(jdbcUrl, user, password, driverClassName);
masterPlugin.start();
//遍历所有以excel_开头的表找出这些表中是不是存在行政区划,上级行政区划的列名
for (int identity_id : new int[]{1, 2, 3}) {
List<Record> list = dm.getDataSetByIdentityId(identity_id);
//开始检查
for (Record record : list) {
String tableName = record.getStr("table_name");
String dataSetName = record.getStr("dataset_name");
HikariCpPlugin dataEasePlugin = new HikariCpPlugin(jdbcUrl.replace("ds_db", DataEaseModel.DB_NAME), user, password, driverClassName);
dataEasePlugin.start();
// 配置ActiveRecord插件
ActiveRecordPlugin arp = new ActiveRecordPlugin(masterPlugin);
arp.setDialect(new MysqlDialect());
ActiveRecordPlugin arpDataEase = new ActiveRecordPlugin(DataEaseModel.DB_NAME, dataEasePlugin);
arpDataEase.setDialect(new MysqlDialect());
//遍历sql目录下所有的sql文件
File sqlDir;
String basePath = AddXzqh.class.getResource("/").getPath();
sqlDir = new File(basePath + "/Sql");
File[] sqlFiles = sqlDir.listFiles();
for (File sqlFile : sqlFiles != null ? sqlFiles : new File[0]) {
//只加载.sql文件
if (sqlFile.getName().indexOf(".sql") > 0) {
arp.addSqlTemplate("/Sql/" + sqlFile.getName());
arpDataEase.addSqlTemplate("/Sql/" + sqlFile.getName());
//这张表中存在行政区划的列名,就跳过,不处理
if (dm.hasNoColumnName(tableName, "行政区划")) {
//System.out.println((identity_id == 2 ? "【市州】" : "【县区】") + dataSetName + "表:" + tableName + "没有行政区划的列名,请手动添加");
dm.addColumn(tableName, "行政区划");
}
}
arp.start();
arpDataEase.start();
DataEaseModel dm = new DataEaseModel();
//遍历所有以excel_开头的表找出这些表中是不是存在行政区划,上级行政区划的列名
for (int identity_id : new int[]{1, 2, 3}) {
List<Record> list = dm.getDataSetByIdentityId(identity_id);
//开始检查
for (Record record : list) {
String tableName = record.getStr("table_name");
String dataSetName = record.getStr("dataset_name");
//这张表中存在行政区划的列名,就跳过,不处理
if (dm.hasNoColumnName(tableName, "行政区划")) {
//System.out.println((identity_id == 2 ? "【市州】" : "【县区】") + dataSetName + "表:" + tableName + "没有行政区划的列名,请手动添加");
dm.addColumn(tableName, "行政区划");
}
//这张表中存在上级行政区划的列名,就跳过,不处理
if (dm.hasNoColumnName(tableName, "上级行政区划")) {
//System.out.println((identity_id == 2 ? "【市州】" : "【县区】") + dataSetName + "表:" + tableName + "没有行政区划的列名,请手动添加");
dm.addColumn(tableName, "上级行政区划");
}
//这张表中存在上级行政区划的列名,就跳过,不处理
if (dm.hasNoColumnName(tableName, "上级行政区划")) {
//System.out.println((identity_id == 2 ? "【市州】" : "【县区】") + dataSetName + "表:" + tableName + "没有行政区划的列名,请手动添加");
dm.addColumn(tableName, "上级行政区划");
}
}
System.out.println("恭喜,所有数据处理完毕。");
session.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("恭喜,所有数据处理完毕。");
session.disconnect();
}
}

@ -17,7 +17,7 @@ public class ChangeDataEaseCity {
*/
public static void main(String[] args) {
//加载配置文件
String configFile = "application_dev.yaml";
String configFile = "application.yaml";
Prop PropKit = new YamlProp(configFile);
HikariCpPlugin dataEasePlugin = new HikariCpPlugin(PropKit.get("mysql.jdbcUrl"), PropKit.get("mysql.user"),

@ -1,73 +1,28 @@
package com.dsideal.base.Tools;
import com.dsideal.base.DataEase.Model.DataEaseModel;
import com.dsideal.base.Util.SSHConnector;
import com.dsideal.base.Tools.Util.SshConnectUtil;
import com.jcraft.jsch.JSchException;
import com.jcraft.jsch.Session;
import com.jfinal.plugin.activerecord.ActiveRecordPlugin;
import com.jfinal.plugin.activerecord.dialect.MysqlDialect;
import com.jfinal.plugin.hikaricp.HikariCpPlugin;
import java.io.File;
import java.io.IOException;
public class InitDataEaseDataSet2 {
public class ExportExcel {
public static void main(String[] args) throws IOException {
public static void main(String[] args) throws IOException, JSchException {
//远程主机的SSH登录信息
String sshHost = "117.78.60.214";
int sshPort = 52025;
String sshUser = "root";
String sshPassword = "DsIdeal@123";
String mysqlHost = "127.0.0.1"; // MySQL server host
int mysqlPort = 3306; // MySQL server port
Session session = SSHConnector.createSSHSession(sshHost, sshPort, sshUser, sshPassword);
try {
int localPort = 33306; // Local port to forward to MySQL server
session.setPortForwardingL(localPort, mysqlHost, mysqlPort);
String jdbcUrl = "jdbc:mysql://localhost:" + localPort + "/ds_db";
//通过ssh链接到Mysql数据库
Session session = SshConnectUtil.Init();
String user = "root";
String password = "Password123@mysql";
String driverClassName = "com.mysql.cj.jdbc.Driver";
DataEaseModel dm = new DataEaseModel();
HikariCpPlugin masterPlugin = new HikariCpPlugin(jdbcUrl, user, password, driverClassName);
masterPlugin.start();
HikariCpPlugin dataEasePlugin = new HikariCpPlugin(jdbcUrl.replace("ds_db", DataEaseModel.DB_NAME), user, password, driverClassName);
dataEasePlugin.start();
// 配置ActiveRecord插件
ActiveRecordPlugin arp = new ActiveRecordPlugin(masterPlugin);
arp.setDialect(new MysqlDialect());
ActiveRecordPlugin arpDataEase = new ActiveRecordPlugin(DataEaseModel.DB_NAME, dataEasePlugin);
arpDataEase.setDialect(new MysqlDialect());
//遍历sql目录下所有的sql文件
File sqlDir;
String basePath = InitDataEaseDataSet2.class.getResource("/").getPath();
sqlDir = new File(basePath + "/Sql");
File[] sqlFiles = sqlDir.listFiles();
for (File sqlFile : sqlFiles != null ? sqlFiles : new File[0]) {
//只加载.sql文件
if (sqlFile.getName().indexOf(".sql") > 0) {
arp.addSqlTemplate("/Sql/" + sqlFile.getName());
arpDataEase.addSqlTemplate("/Sql/" + sqlFile.getName());
}
}
arp.start();
arpDataEase.start();
DataEaseModel dm = new DataEaseModel();
//1、添加到数据集表中
dm.collectDataSet();
//2、加上主键
dm.addPrimaryKey();
//3、将所有非空列去掉不允许为空的限制
dm.updateNotNullColumns();
//1、添加到数据集表中
dm.collectDataSet();
//2、加上主键
dm.addPrimaryKey();
//3、将所有非空列去掉不允许为空的限制
dm.updateNotNullColumns();
// //4、遍历所有数据集的表
// int total = 0;
@ -135,11 +90,7 @@ public class InitDataEaseDataSet2 {
// }
// }
// System.out.println("恭喜,所有数据处理完毕,共生成数据集数量=" + total + "个。");
}catch (Exception e){
System.out.println(e.toString());
}
finally {
session.disconnect();
}
session.disconnect();
}
}
Loading…
Cancel
Save