From c7199c4cbf00874ceef80896747dcefb1c4a2e38 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E6=B3=BD=E7=92=8B?= <2833784085@qq.com@user.noreply.gitee.com> Date: Mon, 24 Jun 2024 08:45:06 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=AC=E4=B8=80=E6=AC=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/compiler.xml | 6 + .idea/encodings.xml | 8 + .idea/inspectionProfiles/Project_Default.xml | 68 ++++++ .idea/misc.xml | 11 +- .idea/uiDesigner.xml | 124 ++++++++++ .idea/workspace.xml | 220 ++++++++++++++++-- etl-common/pom.xml | 79 ++++--- .../main/resources/META-INF/spring.factories | 2 + .../target/classes/META-INF/spring.factories | 2 + etl-common/target/etl-common-1.0-SNAPSHOT.jar | Bin 0 -> 26480 bytes .../target/maven-archiver/pom.properties | 4 +- .../compile/default-compile/createdFiles.lst | 19 ++ .../compile/default-compile/inputFiles.lst | 18 ++ etl-data-source/el-data-source-common/pom.xml | 26 +++ .../source/common/pojo/DatabaseConfig.java | 36 +++ .../source/common/pojo/DatabaseRedis.java | 25 ++ .../common/pojo/constants/MysqlConstants.java | 13 ++ .../common/pojo/req/ConnectMysqlReq.java | 22 ++ .../source/common/pojo/resq/ColumnInfo.java | 27 +++ .../source/common/pojo/DatabaseConfig.class | Bin 0 -> 4630 bytes .../source/common/pojo/DatabaseRedis.class | Bin 0 -> 2286 bytes .../pojo/constants/MysqlConstants.class | Bin 0 -> 474 bytes .../common/pojo/req/ConnectMysqlReq.class | Bin 0 -> 2537 bytes .../source/common/pojo/resq/ColumnInfo.class | Bin 0 -> 4523 bytes etl-data-source/el-data-source-server/pom.xml | 115 +++++++++ .../server/ElDataSourceServerApplication.java | 19 ++ .../source/server/GlobalExceptionHandler.java | 42 ++++ .../data/source/server/config/Swagger.java | 101 ++++++++ .../server/controller/DatabaseController.java | 75 ++++++ .../server/service/DatabaseService.java | 22 ++ .../service/impl/DatabaseServiceImpl.java | 174 ++++++++++++++ .../src/main/resources/bootstrap.yml | 27 +++ .../ElDataSourceServerApplicationTests.java | 39 ++++ .../target/classes/bootstrap.yml | 27 +++ .../ElDataSourceServerApplication.class | Bin 0 -> 1327 bytes .../server/GlobalExceptionHandler.class | Bin 0 -> 3926 bytes .../data/source/server/config/Swagger$1.class | Bin 0 -> 4015 bytes .../data/source/server/config/Swagger.class | Bin 0 -> 3202 bytes .../controller/DatabaseController.class | Bin 0 -> 4929 bytes .../server/service/DatabaseService.class | Bin 0 -> 654 bytes .../service/impl/DatabaseServiceImpl.class | Bin 0 -> 8250 bytes .../el-data-source-server-1.0-SNAPSHOT.jar | Bin 0 -> 3690 bytes .../target/maven-archiver/pom.properties | 5 + .../compile/default-compile/createdFiles.lst | 1 + .../compile/default-compile/inputFiles.lst | 1 + .../default-testCompile/createdFiles.lst | 1 + .../default-testCompile/inputFiles.lst | 1 + .../ElDataSourceServerApplicationTests.class | Bin 0 -> 1800 bytes etl-data-source/pom.xml | 17 ++ etl-gateway/pom.xml | 5 - etl-gateway/src/main/resources/bootstrap.yml | 31 +++ pom.xml | 1 + 52 files changed, 1350 insertions(+), 64 deletions(-) create mode 100644 .idea/inspectionProfiles/Project_Default.xml create mode 100644 .idea/uiDesigner.xml create mode 100644 etl-common/src/main/resources/META-INF/spring.factories create mode 100644 etl-common/target/classes/META-INF/spring.factories create mode 100644 etl-common/target/etl-common-1.0-SNAPSHOT.jar create mode 100644 etl-common/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst create mode 100644 etl-common/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst create mode 100644 etl-data-source/el-data-source-common/pom.xml create mode 100644 etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/DatabaseConfig.java create mode 100644 etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/DatabaseRedis.java create mode 100644 etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/constants/MysqlConstants.java create mode 100644 etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/req/ConnectMysqlReq.java create mode 100644 etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/resq/ColumnInfo.java create mode 100644 etl-data-source/el-data-source-common/target/classes/com/etl/data/source/common/pojo/DatabaseConfig.class create mode 100644 etl-data-source/el-data-source-common/target/classes/com/etl/data/source/common/pojo/DatabaseRedis.class create mode 100644 etl-data-source/el-data-source-common/target/classes/com/etl/data/source/common/pojo/constants/MysqlConstants.class create mode 100644 etl-data-source/el-data-source-common/target/classes/com/etl/data/source/common/pojo/req/ConnectMysqlReq.class create mode 100644 etl-data-source/el-data-source-common/target/classes/com/etl/data/source/common/pojo/resq/ColumnInfo.class create mode 100644 etl-data-source/el-data-source-server/pom.xml create mode 100644 etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/ElDataSourceServerApplication.java create mode 100644 etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/GlobalExceptionHandler.java create mode 100644 etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/config/Swagger.java create mode 100644 etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/controller/DatabaseController.java create mode 100644 etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/service/DatabaseService.java create mode 100644 etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/service/impl/DatabaseServiceImpl.java create mode 100644 etl-data-source/el-data-source-server/src/main/resources/bootstrap.yml create mode 100644 etl-data-source/el-data-source-server/src/test/java/com/etl/data/source/server/ElDataSourceServerApplicationTests.java create mode 100644 etl-data-source/el-data-source-server/target/classes/bootstrap.yml create mode 100644 etl-data-source/el-data-source-server/target/classes/com/etl/data/source/server/ElDataSourceServerApplication.class create mode 100644 etl-data-source/el-data-source-server/target/classes/com/etl/data/source/server/GlobalExceptionHandler.class create mode 100644 etl-data-source/el-data-source-server/target/classes/com/etl/data/source/server/config/Swagger$1.class create mode 100644 etl-data-source/el-data-source-server/target/classes/com/etl/data/source/server/config/Swagger.class create mode 100644 etl-data-source/el-data-source-server/target/classes/com/etl/data/source/server/controller/DatabaseController.class create mode 100644 etl-data-source/el-data-source-server/target/classes/com/etl/data/source/server/service/DatabaseService.class create mode 100644 etl-data-source/el-data-source-server/target/classes/com/etl/data/source/server/service/impl/DatabaseServiceImpl.class create mode 100644 etl-data-source/el-data-source-server/target/el-data-source-server-1.0-SNAPSHOT.jar create mode 100644 etl-data-source/el-data-source-server/target/maven-archiver/pom.properties create mode 100644 etl-data-source/el-data-source-server/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst create mode 100644 etl-data-source/el-data-source-server/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst create mode 100644 etl-data-source/el-data-source-server/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst create mode 100644 etl-data-source/el-data-source-server/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst create mode 100644 etl-data-source/el-data-source-server/target/test-classes/com/etl/data/source/server/ElDataSourceServerApplicationTests.class create mode 100644 etl-data-source/pom.xml create mode 100644 etl-gateway/src/main/resources/bootstrap.yml diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 7909b96..d5f0503 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -2,13 +2,19 @@ + + + + + + \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml index 7ffa493..0b713f8 100644 --- a/.idea/encodings.xml +++ b/.idea/encodings.xml @@ -3,8 +3,16 @@ + + + + + + + + diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 0000000..ee9f695 --- /dev/null +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,68 @@ + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index 325840e..131a039 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -5,10 +5,19 @@ + - + diff --git a/.idea/uiDesigner.xml b/.idea/uiDesigner.xml new file mode 100644 index 0000000..2b63946 --- /dev/null +++ b/.idea/uiDesigner.xml @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 43d5b7f..4d1db4a 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -4,12 +4,70 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -33,29 +91,124 @@ - { + "keyToString": { + "ApiPost:METDOD_SEND_RECORD:el-data-source-server": "{\"/test\":[{\"url\":\"http://localhost:8886/test\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"url\\\": \\\"jdbc:mysql://localhost:3306/\\\",\\n \\\"user\\\": \\\"root\\\",\\n \\\"passWard\\\": \\\"lzz@123\\\"\\n}\",\"responseBody\":\"{\\n \\\"code\\\": 200,\\n \\\"msg\\\": \\\"操作成功\\\",\\n \\\"data\\\": \\\"无法连接到MySQL数据库!\\\"\\n}\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":16.0,\"minute\":7.0,\"second\":1.0,\"nano\":8.935848E8}}},{\"url\":\"http://localhost:8886/test\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"url\\\": \\\"jdbc:mysql://localhost:3306/health\\\",\\n \\\"user\\\": \\\"root\\\",\\n \\\"passWard\\\": \\\"lzz@123\\\"\\n}\",\"responseBody\":\"{\\n \\\"code\\\": 200,\\n \\\"msg\\\": \\\"操作成功\\\",\\n \\\"data\\\": \\\"无法连接到MySQL数据库!\\\"\\n}\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":16.0,\"minute\":7.0,\"second\":17.0,\"nano\":1.862118E8}}},{\"url\":\"http://localhost:8886/test\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"url\\\": \\\"jdbc:mysql://182.254.221.163:3306\\\",\\n \\\"user\\\": \\\"root\\\",\\n \\\"passWard\\\": \\\"lzz@123\\\"\\n}\",\"responseBody\":\"{\\n \\\"code\\\": 200,\\n \\\"msg\\\": \\\"操作成功\\\",\\n \\\"data\\\": \\\"成功连接到MySQL数据库!\\\"\\n}\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":16.0,\"minute\":9.0,\"second\":16.0,\"nano\":9.248973E8}}},{\"url\":\"http://localhost:8886/test\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"url\\\": \\\"jdbc:mysql://182.254.221.163:3306\\\",\\n \\\"user\\\": \\\"root\\\",\\n \\\"passWard\\\": \\\"lzz@123\\\"\\n}\",\"responseBody\":\"{\\n \\\"code\\\": 200,\\n \\\"msg\\\": \\\"操作成功\\\",\\n \\\"data\\\": \\\"成功连接到MySQL数据库!\\\"\\n}\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":16.0,\"minute\":9.0,\"second\":22.0,\"nano\":1.626433E8}}},{\"url\":\"http://localhost:8886/test\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"url\\\": \\\"jdbc:mysql://182.254.221.163:3306/health\\\",\\n \\\"user\\\": \\\"root\\\",\\n \\\"passWard\\\": \\\"lzz@123\\\"\\n}\",\"responseBody\":\"{\\n \\\"code\\\": 200,\\n \\\"msg\\\": \\\"操作成功\\\",\\n \\\"data\\\": \\\"成功连接到MySQL数据库!\\\"\\n}\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":16.0,\"minute\":9.0,\"second\":28.0,\"nano\":6.040624E8}}},{\"url\":\"http://localhost:8886/test\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"url\\\": \\\"jdbc:mysql://182.254.221.163:3306/health\\\",\\n \\\"user\\\": \\\"root\\\",\\n \\\"passWard\\\": \\\"lzz@123\\\"\\n}\",\"responseBody\":\"{\\n \\\"code\\\": 200,\\n \\\"msg\\\": \\\"操作成功\\\",\\n \\\"data\\\": \\\"数据连接成功\\\"\\n}\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":16.0,\"minute\":15.0,\"second\":59.0,\"nano\":5.084082E8}}}],\"/test-database-connection\":[{\"url\":\"http://localhost:8886/test-database-connection\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"com.mysql.cj.jdbc.Driver\\\",\\n \\\"url\\\": \\\"jdbc:mysql://182.254.221.163:health?serverTimezone\\u003dUTC\\\",\\n \\\"username\\\": \\\"root\\\",\\n \\\"password\\\": \\\"lzz@123\\\"\\n}\",\"responseBody\":\"error\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":19.0,\"minute\":28.0,\"second\":7.0,\"nano\":2.000408E8}}},{\"url\":\"http://localhost:8886/test-database-connection\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"com.mysql.cj.jdbc.Driver\\\",\\n \\\"url\\\": \\\"jdbc:mysql://182.254.221.163/health?serverTimezone\\u003dUTC\\\",\\n \\\"username\\\": \\\"root\\\",\\n \\\"password\\\": \\\"lzz@123\\\"\\n}\",\"responseBody\":\"ok\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":19.0,\"minute\":29.0,\"second\":0.0,\"nano\":4.296155E8}}},{\"url\":\"http://localhost:8886/test-database-connection\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"com.mysql.cj.jdbc.Driver\\\",\\n \\\"url\\\": \\\"jdbc:mysql://43.142.12.243/health?serverTimezone\\u003dUTC\\\",\\n \\\"username\\\": \\\"root\\\",\\n \\\"password\\\": \\\"lzz@123\\\"\\n}\",\"responseBody\":\"error\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":19.0,\"minute\":33.0,\"second\":49.0,\"nano\":1.179387E8}}},{\"url\":\"http://localhost:8886/test-database-connection\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"com.mysql.cj.jdbc.Driver\\\",\\n \\\"url\\\": \\\"jdbc:mysql://43.142.12.243/etl?serverTimezone\\u003dUTC\\\",\\n \\\"username\\\": \\\"root\\\",\\n \\\"password\\\": \\\"lzz@123\\\"\\n}\",\"responseBody\":\"error\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":19.0,\"minute\":34.0,\"second\":59.0,\"nano\":4.527054E8}}},{\"url\":\"http://localhost:8886/test-database-connection\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"com.mysql.cj.jdbc.Driver\\\",\\n \\\"url\\\": \\\"jdbc:mysql://43.142.12.243/etl?serverTimezone\\u003dUTC\\\",\\n \\\"username\\\": \\\"root\\\",\\n \\\"password\\\": \\\"ytt@123\\\"\\n}\",\"responseBody\":\"ok\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":19.0,\"minute\":35.0,\"second\":17.0,\"nano\":4.192197E8}}}],\"/findDatabaseTable\":[{\"url\":\"http://localhost:8886/findDatabaseTable\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"com.mysql.cj.jdbc.Driver\\\",\\n \\\"url\\\": \\\"jdbc:mysql://43.142.12.243\\\",\\n \\\"username\\\": \\\"root\\\",\\n \\\"password\\\": \\\"ytt@123\\\"\\n}\",\"responseBody\":\"{\\n \\\"code\\\": 200,\\n \\\"msg\\\": \\\"操作成功\\\",\\n \\\"data\\\": [\\n \\\"information_schema\\\",\\n \\\"access\\\",\\n \\\"bbyb_examination\\\",\\n \\\"buy_car\\\",\\n \\\"demo-seata\\\",\\n \\\"ele-admin-api\\\",\\n \\\"etl\\\",\\n \\\"follow-up\\\",\\n \\\"goods\\\",\\n \\\"mall\\\",\\n \\\"mall-cloud\\\",\\n \\\"mall-config\\\",\\n \\\"mall-seata\\\",\\n \\\"mall_product\\\",\\n \\\"month6\\\",\\n \\\"mysql\\\",\\n \\\"performance_schema\\\",\\n \\\"plm_material\\\",\\n \\\"product\\\",\\n \\\"producth\\\",\\n \\\"rule\\\",\\n \\\"ry-cloud\\\",\\n \\\"ry-config\\\",\\n \\\"seata\\\",\\n \\\"sky_db\\\",\\n \\\"sys\\\",\\n \\\"xxl_job\\\",\\n \\\"yuekao\\\",\\n \\\"zhou1\\\",\\n \\\"zhou2\\\",\\n \\\"zhou3\\\"\\n ]\\n}\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":20.0,\"minute\":36.0,\"second\":48.0,\"nano\":5.312185E8}}},{\"url\":\"http://localhost:8886/findDatabaseTable\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"\\\",\\n \\\"url\\\": \\\"\\\",\\n \\\"username\\\": \\\"\\\",\\n \\\"password\\\": \\\"\\\"\\n}\",\"responseBody\":\"There was an error accessing to URL: http://localhost:8886/findDatabaseTable\\n\\n数据库密码不能为空, 驱动类不能为空, 数据库连接地址不能为空, 数据库用户名不能为空\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":20.0,\"minute\":56.0,\"second\":25.0,\"nano\":3.12132E7}}},{\"url\":\"http://localhost:8886/findDatabaseTable\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"com.mysql.cj.jdbc.Driver\\\",\\n \\\"url\\\": \\\"jdbc:mysql://182.254.221.163:3306/\\\",\\n \\\"username\\\": \\\"root\\\",\\n \\\"password\\\": \\\"lzz@123\\\"\\n}\",\"responseBody\":\"{\\n \\\"code\\\": 200,\\n \\\"msg\\\": \\\"操作成功\\\",\\n \\\"data\\\": [\\n \\\"information_schema\\\",\\n \\\"etl\\\",\\n \\\"health\\\",\\n \\\"mall\\\",\\n \\\"mall-cloud\\\",\\n \\\"mall-product\\\",\\n \\\"mall-search\\\",\\n \\\"mall-seata\\\",\\n \\\"mysql\\\",\\n \\\"nacos_config\\\",\\n \\\"performance_schema\\\",\\n \\\"plm_material\\\",\\n \\\"product\\\",\\n \\\"ry-cloud\\\",\\n \\\"seata\\\",\\n \\\"skywalking\\\",\\n \\\"sys\\\",\\n \\\"xxl_job\\\",\\n \\\"yuekao\\\"\\n ]\\n}\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":20.0,\"minute\":57.0,\"second\":43.0,\"nano\":4.081869E8}}},{\"url\":\"http://localhost:8886/findDatabaseTable\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"com.mysql.cj.jdbc.Driver\\\",\\n \\\"url\\\": \\\"jdbc:mysql://182.254.221.163:3306/health\\\",\\n \\\"username\\\": \\\"root\\\",\\n \\\"password\\\": \\\"lzz@123\\\"\\n}\",\"responseBody\":\"{\\n \\\"code\\\": 200,\\n \\\"msg\\\": \\\"操作成功\\\",\\n \\\"data\\\": [\\n \\\"information_schema\\\",\\n \\\"etl\\\",\\n \\\"health\\\",\\n \\\"mall\\\",\\n \\\"mall-cloud\\\",\\n \\\"mall-product\\\",\\n \\\"mall-search\\\",\\n \\\"mall-seata\\\",\\n \\\"mysql\\\",\\n \\\"nacos_config\\\",\\n \\\"performance_schema\\\",\\n \\\"plm_material\\\",\\n \\\"product\\\",\\n \\\"ry-cloud\\\",\\n \\\"seata\\\",\\n \\\"skywalking\\\",\\n \\\"sys\\\",\\n \\\"xxl_job\\\",\\n \\\"yuekao\\\"\\n ]\\n}\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":20.0,\"minute\":58.0,\"second\":20.0,\"nano\":6.477346E8}}},{\"url\":\"http://localhost:8886/findDatabaseTable\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"com.mysql.cj.jdbc.Driver\\\",\\n \\\"url\\\": \\\"jdbc:mysql://182.254.221.163:3306\\\",\\n \\\"username\\\": \\\"root\\\",\\n \\\"password\\\": \\\"lzz@123\\\"\\n}\",\"responseBody\":\"{\\n \\\"code\\\": 200,\\n \\\"msg\\\": \\\"操作成功\\\",\\n \\\"data\\\": [\\n \\\"information_schema\\\",\\n \\\"etl\\\",\\n \\\"health\\\",\\n \\\"mall\\\",\\n \\\"mall-cloud\\\",\\n \\\"mall-product\\\",\\n \\\"mall-search\\\",\\n \\\"mall-seata\\\",\\n \\\"mysql\\\",\\n \\\"nacos_config\\\",\\n \\\"performance_schema\\\",\\n \\\"plm_material\\\",\\n \\\"product\\\",\\n \\\"ry-cloud\\\",\\n \\\"seata\\\",\\n \\\"skywalking\\\",\\n \\\"sys\\\",\\n \\\"xxl_job\\\",\\n \\\"yuekao\\\"\\n ]\\n}\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":20.0,\"minute\":58.0,\"second\":35.0,\"nano\":6.607178E8}}},{\"url\":\"http://localhost:8886/findDatabaseTable\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"com.mysql.cj.jdbc.Driver\\\",\\n \\\"url\\\": \\\"jdbc:mysql://182.254.221.163:3306/\\\",\\n \\\"username\\\": \\\"root\\\",\\n \\\"password\\\": \\\"lzz@123\\\",\\n \\\"tableName\\\":\\\"health\\\"\\n}\",\"responseBody\":\"{\\n \\\"code\\\": 200,\\n \\\"msg\\\": \\\"操作成功\\\",\\n \\\"data\\\": [\\n \\\"ef_completed_questionnaire_answer\\\",\\n \\\"ef_followup_plan\\\",\\n \\\"ef_followup_plan_setting\\\",\\n \\\"ef_followup_task\\\",\\n \\\"ef_followup_task_item\\\",\\n \\\"ef_followup_task_item_setting\\\",\\n \\\"ef_followup_task_setting\\\",\\n \\\"ef_questionnaire\\\",\\n \\\"ef_questionnaire_option\\\",\\n \\\"ef_questionnaire_question\\\",\\n \\\"ef_questionnaire_section\\\",\\n \\\"ef_questionnaire_template\\\",\\n \\\"t_brank\\\",\\n \\\"t_community\\\",\\n \\\"t_community_explain\\\",\\n \\\"t_community_search\\\",\\n \\\"t_consult\\\",\\n \\\"t_consult_chat\\\",\\n \\\"t_department_disease\\\",\\n \\\"t_dictionary\\\",\\n \\\"t_disease\\\",\\n \\\"t_drug\\\",\\n \\\"t_drug_type\\\",\\n \\\"t_evaluate\\\",\\n \\\"t_explain_praise\\\",\\n \\\"t_file\\\",\\n \\\"t_file_sharding\\\",\\n \\\"t_gift\\\",\\n \\\"t_hb_log\\\",\\n \\\"t_historical_consultation\\\",\\n \\\"t_menu\\\",\\n \\\"t_orders\\\",\\n \\\"t_role\\\",\\n \\\"t_role_menu\\\",\\n \\\"t_system_news\\\",\\n \\\"t_user\\\",\\n \\\"t_user_auto_reply\\\",\\n \\\"t_user_collect\\\",\\n \\\"t_user_department\\\",\\n \\\"t_user_gift\\\",\\n \\\"t_user_hospital\\\",\\n \\\"t_user_job\\\",\\n \\\"t_user_role\\\",\\n \\\"t_video\\\",\\n \\\"t_video_comments\\\",\\n \\\"t_wallet_brank\\\",\\n \\\"t_wallet_info\\\",\\n \\\"t_withdraw_log\\\"\\n ]\\n}\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":21.0,\"minute\":34.0,\"second\":36.0,\"nano\":7.434797E8}}}],\"/test-database-mysql\":[{\"url\":\"http://localhost:8886/test-database-mysql\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"\\\",\\n \\\"url\\\": \\\"\\\",\\n \\\"username\\\": \\\"\\\",\\n \\\"password\\\": \\\"\\\"\\n}\",\"responseBody\":\"{\\n \\\"code\\\": 500,\\n \\\"msg\\\": \\\"操作异常\\\",\\n \\\"data\\\": null\\n}\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":20.0,\"minute\":39.0,\"second\":5.0,\"nano\":6.72859E7}}},{\"url\":\"http://localhost:8886/test-database-mysql\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"\\\",\\n \\\"url\\\": \\\"\\\",\\n \\\"username\\\": \\\"\\\",\\n \\\"password\\\": \\\"\\\"\\n}\",\"responseBody\":\"{\\n \\\"code\\\": 500,\\n \\\"msg\\\": \\\"操作异常\\\",\\n \\\"data\\\": null\\n}\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":20.0,\"minute\":43.0,\"second\":49.0,\"nano\":4.508657E8}}},{\"url\":\"http://localhost:8886/test-database-mysql\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"\\\",\\n \\\"url\\\": \\\"\\\",\\n \\\"username\\\": \\\"\\\",\\n \\\"password\\\": \\\"\\\"\\n}\",\"responseBody\":\"{\\n \\\"code\\\": 500,\\n \\\"msg\\\": \\\"操作异常\\\",\\n \\\"data\\\": null\\n}\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":20.0,\"minute\":44.0,\"second\":21.0,\"nano\":7.852463E8}}},{\"url\":\"http://localhost:8886/test-database-mysql\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"\\\",\\n \\\"url\\\": \\\"\\\",\\n \\\"username\\\": \\\"\\\",\\n \\\"password\\\": \\\"\\\"\\n}\",\"responseBody\":\"There was an error accessing to URL: http://localhost:8886/test-database-mysql\\n\\n\\u003chtml\\u003e\\u003cbody\\u003e\\u003ch1\\u003eWhitelabel Error Page\\u003c/h1\\u003e\\u003cp\\u003eThis application has no explicit mapping for /error, so you are seeing this as a fallback.\\u003c/p\\u003e\\u003cdiv id\\u003d\\u0027created\\u0027\\u003eFri Jun 21 20:49:12 CST 2024\\u003c/div\\u003e\\u003cdiv\\u003eThere was an unexpected error (type\\u003dBad Request, status\\u003d400).\\u003c/div\\u003e\\u003c/body\\u003e\\u003c/html\\u003e\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":20.0,\"minute\":49.0,\"second\":12.0,\"nano\":8.879368E8}}},{\"url\":\"http://localhost:8886/test-database-mysql\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"\\\",\\n \\\"url\\\": \\\"\\\",\\n \\\"username\\\": \\\"\\\",\\n \\\"password\\\": \\\"\\\"\\n}\",\"responseBody\":\"There was an error accessing to URL: http://localhost:8886/test-database-mysql\\n\\n\\u003chtml\\u003e\\u003cbody\\u003e\\u003ch1\\u003eWhitelabel Error Page\\u003c/h1\\u003e\\u003cp\\u003eThis application has no explicit mapping for /error, so you are seeing this as a fallback.\\u003c/p\\u003e\\u003cdiv id\\u003d\\u0027created\\u0027\\u003eFri Jun 21 20:49:28 CST 2024\\u003c/div\\u003e\\u003cdiv\\u003eThere was an unexpected error (type\\u003dBad Request, status\\u003d400).\\u003c/div\\u003e\\u003c/body\\u003e\\u003c/html\\u003e\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":20.0,\"minute\":49.0,\"second\":28.0,\"nano\":8.304501E8}}},{\"url\":\"http://localhost:8886/test-database-mysql\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"\\\",\\n \\\"url\\\": \\\"\\\",\\n \\\"username\\\": \\\"\\\",\\n \\\"password\\\": \\\"\\\"\\n}\",\"responseBody\":\"There was an error accessing to URL: http://localhost:8886/test-database-mysql\\n\\n\\u003chtml\\u003e\\u003cbody\\u003e\\u003ch1\\u003eWhitelabel Error Page\\u003c/h1\\u003e\\u003cp\\u003eThis application has no explicit mapping for /error, so you are seeing this as a fallback.\\u003c/p\\u003e\\u003cdiv id\\u003d\\u0027created\\u0027\\u003eFri Jun 21 20:49:59 CST 2024\\u003c/div\\u003e\\u003cdiv\\u003eThere was an unexpected error (type\\u003dBad Request, status\\u003d400).\\u003c/div\\u003e\\u003c/body\\u003e\\u003c/html\\u003e\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":20.0,\"minute\":49.0,\"second\":59.0,\"nano\":9.699223E8}}},{\"url\":\"http://localhost:8886/test-database-mysql\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"\\\",\\n \\\"url\\\": \\\"\\\",\\n \\\"username\\\": \\\"\\\",\\n \\\"password\\\": \\\"\\\"\\n}\",\"responseBody\":\"There was an error accessing to URL: http://localhost:8886/test-database-mysql\\n\\n\\u003chtml\\u003e\\u003cbody\\u003e\\u003ch1\\u003eWhitelabel Error Page\\u003c/h1\\u003e\\u003cp\\u003eThis application has no explicit mapping for /error, so you are seeing this as a fallback.\\u003c/p\\u003e\\u003cdiv id\\u003d\\u0027created\\u0027\\u003eFri Jun 21 20:53:52 CST 2024\\u003c/div\\u003e\\u003cdiv\\u003eThere was an unexpected error (type\\u003dBad Request, status\\u003d400).\\u003c/div\\u003e\\u003c/body\\u003e\\u003c/html\\u003e\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":20.0,\"minute\":53.0,\"second\":52.0,\"nano\":4.422725E8}}},{\"url\":\"http://localhost:8886/test-database-mysql\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"\\\",\\n \\\"url\\\": \\\"\\\",\\n \\\"username\\\": \\\"\\\",\\n \\\"password\\\": \\\"\\\"\\n}\",\"responseBody\":\"There was an error accessing to URL: http://localhost:8886/test-database-mysql\\n\\n驱动类不能为空, 数据库用户名不能为空, 数据库密码不能为空, 数据库连接地址不能为空\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":20.0,\"minute\":55.0,\"second\":0.0,\"nano\":4.917924E8}}},{\"url\":\"http://localhost:8886/test-database-mysql\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"\\\",\\n \\\"url\\\": \\\"\\\",\\n \\\"username\\\": \\\"\\\",\\n \\\"password\\\": \\\"\\\"\\n}\",\"responseBody\":\"There was an error accessing to URL: http://localhost:8886/test-database-mysql\\n\\n数据库密码不能为空, 数据库用户名不能为空, 数据库连接地址不能为空, 驱动类不能为空\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":20.0,\"minute\":56.0,\"second\":20.0,\"nano\":7.39437E7}}},{\"url\":\"http://localhost:8886/test-database-mysql\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"com.mysql.cj.jdbc.Driver\\\",\\n \\\"url\\\": \\\"jdbc:mysql://182.254.221.163:3306/\\\",\\n \\\"username\\\": \\\"root\\\",\\n \\\"password\\\": \\\"lzz@123\\\"\\n}\",\"responseBody\":\"{\\n \\\"code\\\": 200,\\n \\\"msg\\\": \\\"操作成功\\\",\\n \\\"data\\\": null\\n}\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":20.0,\"minute\":57.0,\"second\":9.0,\"nano\":3.471744E8}}},{\"url\":\"http://localhost:8886/test-database-mysql\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"com.mysql.cj.jdbc.Driver\\\",\\n \\\"url\\\": \\\"jdbc:mysql://182.254.221.163:3306/\\\",\\n \\\"username\\\": \\\"root\\\",\\n \\\"password\\\": \\\"lzz@123\\\"\\n}\",\"responseBody\":\"{\\n \\\"code\\\": 200,\\n \\\"msg\\\": \\\"操作成功\\\",\\n \\\"data\\\": null\\n}\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":20.0,\"minute\":57.0,\"second\":15.0,\"nano\":9.596244E8}}},{\"url\":\"http://localhost:8886/test-database-mysql\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"com.mysql.cj.jdbc.Driver\\\",\\n \\\"url\\\": \\\"jdbc:mysql://182.254.221.163:3306/\\\",\\n \\\"username\\\": \\\"root\\\",\\n \\\"password\\\": \\\"lzz@123\\\",\\n \\\"tableName\\\":\\\"health\\\"\\n}\",\"responseBody\":\"{\\n \\\"code\\\": 200,\\n \\\"msg\\\": \\\"操作成功\\\",\\n \\\"data\\\": \\\"连接成功\\\"\\n}\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":21.0},\"time\":{\"hour\":21.0,\"minute\":34.0,\"second\":26.0,\"nano\":1.512348E8}}}],\"/testDatabaseMysql\":[{\"url\":\"http://localhost:8886/testDatabaseMysql\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"\\\",\\n \\\"url\\\": \\\"\\\",\\n \\\"username\\\": \\\"\\\",\\n \\\"password\\\": \\\"\\\",\\n \\\"tableName\\\": \\\"\\\",\\n \\\"warehouseName\\\": \\\"\\\"\\n}\",\"responseBody\":\"There was an error accessing to URL: http://localhost:8886/testDatabaseMysql\\n\\n\\u003chtml\\u003e\\u003cbody\\u003e\\u003ch1\\u003eWhitelabel Error Page\\u003c/h1\\u003e\\u003cp\\u003eThis application has no explicit mapping for /error, so you are seeing this as a fallback.\\u003c/p\\u003e\\u003cdiv id\\u003d\\u0027created\\u0027\\u003eSat Jun 22 12:34:07 CST 2024\\u003c/div\\u003e\\u003cdiv\\u003eThere was an unexpected error (type\\u003dBad Request, status\\u003d400).\\u003c/div\\u003e\\u003c/body\\u003e\\u003c/html\\u003e\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":22.0},\"time\":{\"hour\":12.0,\"minute\":34.0,\"second\":7.0,\"nano\":9.278628E8}}},{\"url\":\"http://localhost:8886/testDatabaseMysql\",\"header\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1.0,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"\\\",\\n \\\"url\\\": \\\"\\\",\\n \\\"username\\\": \\\"\\\",\\n \\\"password\\\": \\\"\\\",\\n \\\"tableName\\\": \\\"\\\",\\n \\\"warehouseName\\\": \\\"\\\"\\n}\",\"responseBody\":\"There was an error accessing to URL: http://localhost:8886/testDatabaseMysql\\n\\n驱动类不能为空, 数据库连接地址不能为空, 数据库用户名不能为空, 数据库密码不能为空\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024.0,\"month\":6.0,\"day\":22.0},\"time\":{\"hour\":12.0,\"minute\":35.0,\"second\":17.0,\"nano\":7.667724E8}}},{\"url\":\"http://localhost:8886/testDatabaseMysql\",\"header\":[{\"is_checked\":1,\"type\":\"Text\",\"value\":\"\"}],\"query\":[{\"is_checked\":1,\"type\":\"Text\",\"value\":\"\"}],\"rest\":[{\"is_checked\":1,\"type\":\"Text\",\"value\":\"\"}],\"requestBody\":\"{\\n \\\"driverClassName\\\": \\\"\\\",\\n \\\"url\\\": \\\"\\\",\\n \\\"username\\\": \\\"\\\",\\n \\\"password\\\": \\\"\\\",\\n \\\"tableName\\\": \\\"\\\",\\n \\\"warehouseName\\\": \\\"\\\"\\n}\",\"responseBody\":\"There was an error accessing to URL: http://localhost:8886/testDatabaseMysql\\n\\n\\u003chtml\\u003e\\u003cbody\\u003e\\u003ch1\\u003eWhitelabel Error Page\\u003c/h1\\u003e\\u003cp\\u003eThis application has no explicit mapping for /error, so you are seeing this as a fallback.\\u003c/p\\u003e\\u003cdiv id\\u003d\\u0027created\\u0027\\u003eSat Jun 22 12:39:36 CST 2024\\u003c/div\\u003e\\u003cdiv\\u003eThere was an unexpected error (type\\u003dInternal Server Error, status\\u003d500).\\u003c/div\\u003e\\u003c/body\\u003e\\u003c/html\\u003e\",\"selectedItem\":\"POST\",\"time\":{\"date\":{\"year\":2024,\"month\":6,\"day\":22},\"time\":{\"hour\":12,\"minute\":39,\"second\":36,\"nano\":447723500}}}]}", + "RequestMappingsPanelOrder0": "0", + "RequestMappingsPanelOrder1": "1", + "RequestMappingsPanelWidth0": "75", + "RequestMappingsPanelWidth1": "75", + "RunOnceActivity.OpenProjectViewOnStart": "true", + "RunOnceActivity.ShowReadmeOnStart": "true", + "SHARE_PROJECT_CONFIGURATION_FILES": "true", + "WebServerToolWindowFactoryState": "false", + "git-widget-placeholder": "main", + "jdk.selected.JAVA_MODULE": "1.8", + "last_opened_file_path": "D:/workspace/etl-ui", + "node.js.detected.package.eslint": "true", + "node.js.detected.package.tslint": "true", + "node.js.selected.package.eslint": "(autodetect)", + "node.js.selected.package.tslint": "(autodetect)", + "nodejs_package_manager_path": "npm", + "project.structure.last.edited": "模块", + "project.structure.proportion": "0.17", + "project.structure.side.proportion": "0.29885057", + "settings.editor.selected.configurable": "configurable.group.build", + "spring.configuration.checksum": "21940204b7449cbc44619bf9f15c4b27", + "vue.rearranger.settings.migration": "true" } -}]]> - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + @@ -81,7 +238,22 @@ + + + + + + + + + @@ -98,4 +270,8 @@ + + + \ No newline at end of file diff --git a/etl-common/pom.xml b/etl-common/pom.xml index 412ed7b..8653e6f 100644 --- a/etl-common/pom.xml +++ b/etl-common/pom.xml @@ -9,13 +9,54 @@ etl-common etl-common + 1.8 UTF-8 UTF-8 2.6.13 + + + com.bwie + etl-cloud + 1.0-SNAPSHOT + + + org.springframework.boot + spring-boot-starter-validation + + + org.redisson + redisson-spring-boot-starter + 3.21.1 + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-test + + + org.springframework.boot + spring-boot-starter-data-redis + + + + + + org.springframework.boot + spring-boot-starter-data-redis + + + + com.github.xiaoymin + knife4j-openapi2-spring-boot-starter + 4.4.0 + net.sourceforge.tess4j tess4j @@ -32,6 +73,10 @@ knife4j-openapi2-spring-boot-starter 4.4.0 + + org.springframework.boot + spring-boot-starter-web + org.springframework.boot spring-boot-starter-test @@ -98,40 +143,6 @@ import - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.8.1 - - 1.8 - 1.8 - UTF-8 - - - - org.springframework.boot - spring-boot-maven-plugin - ${spring-boot.version} - - com.health.cloud.common.HealthCloudCommonApplication - true - - - - repackage - - repackage - - - - - - - - diff --git a/etl-common/src/main/resources/META-INF/spring.factories b/etl-common/src/main/resources/META-INF/spring.factories new file mode 100644 index 0000000..d562b5f --- /dev/null +++ b/etl-common/src/main/resources/META-INF/spring.factories @@ -0,0 +1,2 @@ +#org.springframework.boot.autoconfigure.EnableAutoConfiguration=\ +# com.health.common.handle.ExceptHandle diff --git a/etl-common/target/classes/META-INF/spring.factories b/etl-common/target/classes/META-INF/spring.factories new file mode 100644 index 0000000..d562b5f --- /dev/null +++ b/etl-common/target/classes/META-INF/spring.factories @@ -0,0 +1,2 @@ +#org.springframework.boot.autoconfigure.EnableAutoConfiguration=\ +# com.health.common.handle.ExceptHandle diff --git a/etl-common/target/etl-common-1.0-SNAPSHOT.jar b/etl-common/target/etl-common-1.0-SNAPSHOT.jar new file mode 100644 index 0000000000000000000000000000000000000000..eca0a6c92076bb3c60d8ebc1e31b001d34a13280 GIT binary patch literal 26480 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 RJ(w0D3A#LOg+dSz{tsb$o815a literal 0 HcmV?d00001 diff --git a/etl-common/target/maven-archiver/pom.properties b/etl-common/target/maven-archiver/pom.properties index 72f02fc..9905eb9 100644 --- a/etl-common/target/maven-archiver/pom.properties +++ b/etl-common/target/maven-archiver/pom.properties @@ -1,5 +1,5 @@ #Generated by Maven -#Tue Jun 18 19:06:20 CST 2024 -version=1.0-SNAPSHOT +#Fri Jun 21 17:06:57 CST 2024 groupId=com.bwie artifactId=etl-common +version=1.0-SNAPSHOT diff --git a/etl-common/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/etl-common/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst new file mode 100644 index 0000000..55b2628 --- /dev/null +++ b/etl-common/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst @@ -0,0 +1,19 @@ +com\etl\common\constants\Constants.class +com\etl\common\result\PageResult.class +com\etl\common\constants\JwtConstants.class +com\etl\common\Entity.class +com\etl\common\handler\ExceptionHandlers.class +com\etl\common\util\JwtUtils.class +com\etl\common\util\RequestUtil.class +com\etl\common\exception\ServiceException.class +com\etl\common\result\ResultBody.class +com\etl\common\config\Swagger.class +com\etl\common\exception\AllException.class +com\etl\common\util\RestTemplateUtil.class +com\etl\common\result\Result.class +com\etl\common\config\Swagger$1.class +com\etl\common\BaseEntity.class +com\etl\common\exception\GlobalException.class +com\etl\common\util\RestTemplateConfig.class +com\etl\common\constants\TokenConstants.class +com\etl\common\util\StringUtils.class diff --git a/etl-common/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/etl-common/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst new file mode 100644 index 0000000..1597a51 --- /dev/null +++ b/etl-common/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst @@ -0,0 +1,18 @@ +D:\workspace\etl-cloud\etl-common\src\main\java\com\etl\common\config\Swagger.java +D:\workspace\etl-cloud\etl-common\src\main\java\com\etl\common\exception\AllException.java +D:\workspace\etl-cloud\etl-common\src\main\java\com\etl\common\result\Result.java +D:\workspace\etl-cloud\etl-common\src\main\java\com\etl\common\util\RestTemplateConfig.java +D:\workspace\etl-cloud\etl-common\src\main\java\com\etl\common\constants\Constants.java +D:\workspace\etl-cloud\etl-common\src\main\java\com\etl\common\result\PageResult.java +D:\workspace\etl-cloud\etl-common\src\main\java\com\etl\common\constants\TokenConstants.java +D:\workspace\etl-cloud\etl-common\src\main\java\com\etl\common\util\RequestUtil.java +D:\workspace\etl-cloud\etl-common\src\main\java\com\etl\common\util\StringUtils.java +D:\workspace\etl-cloud\etl-common\src\main\java\com\etl\common\util\RestTemplateUtil.java +D:\workspace\etl-cloud\etl-common\src\main\java\com\etl\common\constants\JwtConstants.java +D:\workspace\etl-cloud\etl-common\src\main\java\com\etl\common\util\JwtUtils.java +D:\workspace\etl-cloud\etl-common\src\main\java\com\etl\common\BaseEntity.java +D:\workspace\etl-cloud\etl-common\src\main\java\com\etl\common\exception\GlobalException.java +D:\workspace\etl-cloud\etl-common\src\main\java\com\etl\common\handler\ExceptionHandlers.java +D:\workspace\etl-cloud\etl-common\src\main\java\com\etl\common\Entity.java +D:\workspace\etl-cloud\etl-common\src\main\java\com\etl\common\exception\ServiceException.java +D:\workspace\etl-cloud\etl-common\src\main\java\com\etl\common\result\ResultBody.java diff --git a/etl-data-source/el-data-source-common/pom.xml b/etl-data-source/el-data-source-common/pom.xml new file mode 100644 index 0000000..fa054e0 --- /dev/null +++ b/etl-data-source/el-data-source-common/pom.xml @@ -0,0 +1,26 @@ + + + 4.0.0 + + com.bwie + etl-data-source + 1.0-SNAPSHOT + + el-data-source-common + el-data-source-common + + 1.8 + UTF-8 + UTF-8 + 2.6.13 + + + + com.bwie + etl-common + 1.0-SNAPSHOT + + + + diff --git a/etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/DatabaseConfig.java b/etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/DatabaseConfig.java new file mode 100644 index 0000000..27c41a3 --- /dev/null +++ b/etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/DatabaseConfig.java @@ -0,0 +1,36 @@ +package com.etl.data.source.common.pojo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; + +@Data +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "数据库配置") +public class DatabaseConfig { + @NotBlank(message = "驱动类不能为空") + @ApiModelProperty(value = "驱动类") + private String driverClassName; + @NotBlank(message = "数据库连接地址不能为空") + @ApiModelProperty(value = "数据库连接地址") + private String url; + @NotBlank(message = "数据库用户名不能为空") + @ApiModelProperty(value = "数据库用户名") + private String username; + @NotBlank(message = "数据库密码不能为空") + @ApiModelProperty(value = "数据库密码") + private String password; + @ApiModelProperty(value = "数据库表名") + private String tableName; + @ApiModelProperty(value = "数据库库名") + private String warehouseName; + +} + diff --git a/etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/DatabaseRedis.java b/etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/DatabaseRedis.java new file mode 100644 index 0000000..bf67072 --- /dev/null +++ b/etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/DatabaseRedis.java @@ -0,0 +1,25 @@ +package com.etl.data.source.common.pojo; + +import io.swagger.annotations.ApiModel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.validation.constraints.NotBlank; + +/** + * @ClassName DatabaseRedis + * @Description 描述 + * @Author ZeZhang.Liu + * @Date 2024/6/24 8:35 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "redis数据库配置") +public class DatabaseRedis { + @NotBlank(message = "redis连接地址不能为空") + private String url; + @NotBlank(message = "redis端口号不能为空") + private String port; +} diff --git a/etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/constants/MysqlConstants.java b/etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/constants/MysqlConstants.java new file mode 100644 index 0000000..a0fc707 --- /dev/null +++ b/etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/constants/MysqlConstants.java @@ -0,0 +1,13 @@ +package com.etl.data.source.common.pojo.constants; + +/** + * @ClassName MysqlConstants + * @Description 描述 + * @Author ZeZhang.Liu + * @Date 2024/6/21 20:34 + */ +public class MysqlConstants { + public static final String MYSQL_USER = "user"; + + public static final String MYSQL_PASSWORD = "password"; +} diff --git a/etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/req/ConnectMysqlReq.java b/etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/req/ConnectMysqlReq.java new file mode 100644 index 0000000..f23dac1 --- /dev/null +++ b/etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/req/ConnectMysqlReq.java @@ -0,0 +1,22 @@ +package com.etl.data.source.common.pojo.req; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @ClassName ConnectMysqlReq + * @Description 描述 + * @Author ZeZhang.Liu + * @Date 2024/6/21 15:32 + */ +@Data +@ApiModel(value = "连接mysql请求参数") +public class ConnectMysqlReq { + @ApiModelProperty(value = "数据库连接地址") + private String url; + @ApiModelProperty(value = "数据库用户名") + private String user; + @ApiModelProperty(value = "数据库密码") + private String passWard; +} diff --git a/etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/resq/ColumnInfo.java b/etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/resq/ColumnInfo.java new file mode 100644 index 0000000..e2cba26 --- /dev/null +++ b/etl-data-source/el-data-source-common/src/main/java/com/etl/data/source/common/pojo/resq/ColumnInfo.java @@ -0,0 +1,27 @@ +package com.etl.data.source.common.pojo.resq; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "字段信息") +public class ColumnInfo { + @ApiModelProperty(value = "字段名") + private String columnName; + @ApiModelProperty(value = "字段类型") + private String dataType; + @ApiModelProperty(value = "字段长度") + private Integer characterMaximumLength; // 注意这里可能是null + @ApiModelProperty(value = "字段键类型") + private String columnKey; // 主键、唯一键等 + @ApiModelProperty(value = "是否为空") + private String isNullable; // YES 或 NO + @ApiModelProperty(value = "字段注释") + private String columnComment; // 列注释 + +} diff --git a/etl-data-source/el-data-source-common/target/classes/com/etl/data/source/common/pojo/DatabaseConfig.class b/etl-data-source/el-data-source-common/target/classes/com/etl/data/source/common/pojo/DatabaseConfig.class new file mode 100644 index 0000000000000000000000000000000000000000..350a6fdceec9833359e8ee62b9b1cb0da9d179cb GIT binary patch literal 4630 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 H?&8EhQP;DY literal 0 HcmV?d00001 diff --git a/etl-data-source/el-data-source-common/target/classes/com/etl/data/source/common/pojo/constants/MysqlConstants.class b/etl-data-source/el-data-source-common/target/classes/com/etl/data/source/common/pojo/constants/MysqlConstants.class new file mode 100644 index 0000000000000000000000000000000000000000..6b6430aadd9d9ccb1834b9bde5d5fecf8b80fdcf GIT binary patch literal 474 zcmbVIyH3ME5S+`?ah@bROFE$78VUpm2?eMe0x<+pp^I}07dgJ*JA?QvDkKU%fR93K z91zgbjCN*swX^g7@%jc}2dgf!Xce(o#1ezsx$!T&+bjR1$I$e~;z96GL?iCoSVg0K zhH6_!#)`=HMVLqj%M7*o()p3^Uw3=Q4ptZn2P#tbkRiLV*=NYL^-wa@Jr&8bWHONP zr5J>yG(8=NurFdY<6mOV-YLVd=LLGgr49K|Siy}>;y`lJCOYC%J=Rpuy%^qkGWX%P zHA6mKKOH|+vn#E??d{oL6}Tuf?Ed!#L*pl&?qDnfOMfOt#thC>81ty(A=Z(hd_lN| z9P*%KQdT7H{Ng3*kZF_&D>T7V4&=99z@F2UDq(?SpoAJ>C9U(Qqd|;efiQ#SC)`qT A-v9sr literal 0 HcmV?d00001 diff --git a/etl-data-source/el-data-source-common/target/classes/com/etl/data/source/common/pojo/req/ConnectMysqlReq.class b/etl-data-source/el-data-source-common/target/classes/com/etl/data/source/common/pojo/req/ConnectMysqlReq.class new file mode 100644 index 0000000000000000000000000000000000000000..e00c164bd303ee597ca9bbe3d4234fefcd4a98ac GIT binary patch literal 2537 zcmbVNU2has7=F&~eC>7$rL=`rRM0AIw`Jr@VM|p&K%j-%LJ>rC*iPEP?aX#|7UWL3 zFy2&6)ElG58^sGEkZ7A=;>Qgp{*M-Zgow|XnReUlCK8kOoaekB=e+OpzVq&1|J?Z% zz%IORz z-qdkkAYBbg0JpZ~D%(cJu}GXh50u2jz0!MMQMCH?%(5AS{Zfq=Hp_1y3! zCehVB#(NI(VcHG4o^zr)bszCoCuY0(q$sM2aEoc<%A_`+zxH4 z;#Y&BV^KEcdsf-Mriv0WGq$Jpo8FxnY z&P1XF$KvS8Y$A^i&5@#3fHkqQCTJcF?c%#bb~&Py-57P0QMA27GFHAgX;&uWs<1>y z8Ord;(V;_(l~@a$O0^WSZgCuHXWR#w&e{t`=*R6SkR6RmbJ&#?ZL2HDHrc)cTmGvn zS-1^x^G(T8-oH7waQoW)C)e0oCZ57(6Yc0Q@wi-`K!?E2|Ir;L_Q5jo9JZR+CQ+9} z-EtWKyLChTw|1cFmd0g;>eK3Cu?9@Mg$wM9-p!Jq0fDC8&5I22B)Ux;!d8Kn+O=`% zNwHlnJ08ECzDCWqs{fKW`mu!*q>XbYjg%w=jG3nCMrnWYQ>Y0 zJ1M4W3oo;{3+`&q9K>yc6rSd)MZ#u0Lu|$d=)|);2}vl|mCipQb*s*KT|;Nqpn-F` z-g$jPXV$KPvr_Ne-q5)R`NX-vBvUfUp8U^9HBP!Cwn&negv139=xuyY`cdzR>&0GZ ze2?;|_r&EDvbE#9#2&_+VO}%&p6{V5H}Zc#{Ss>WM*erGL%lt-(4r%OexjF4LFxMw zO*!Q*)?J6$ms4h8ELvm=Dorv4EvHHw?JiocqdBMMv}H!wf=;7s!N}>-$ViOzoUv%6 z++aZIRXue+4s?m$89a~eOrss|VF&vxMU9J{l%>&wB7b?eL%|Uo#%?11=HeB+K%}9> zPJEF_N5D^E50Qbrd@~PIH~z*N9fb$z(9zF7Lp;F77-p73Ud>UFbjM!qvO82spNxL> z7ZEpyx)i<2m}T@r4wm>Dv5kHjy-&CF?^6aM$~U$2Pm*w>C4U`y-z=Kmk@8GIk&2v> zXbf3~Sd}fPk%|?FoQ#|rsWvqx^`-d1B&;+>@G@!Qw8t>^6Qz*FaU5W%X?`I)aF9r0 zz#H%?ks8r<1=>Rj6w)RHse%v>X=^Yk^o I$9a16U)KQM4*&oF literal 0 HcmV?d00001 diff --git a/etl-data-source/el-data-source-common/target/classes/com/etl/data/source/common/pojo/resq/ColumnInfo.class b/etl-data-source/el-data-source-common/target/classes/com/etl/data/source/common/pojo/resq/ColumnInfo.class new file mode 100644 index 0000000000000000000000000000000000000000..3471ed56edb11c101c3b40b8786fa1d3796e6dd3 GIT binary patch literal 4523 zcmb7H|8E;-8ULJp=R4bHJ9V3MN6X08P!cDZDc`xYgRbjnSdx{tlx_^z)ww2aZC`4i zyOl2++h7}G6GZ}TLI`O>YC$S16C^_&V(`n5_>rHG_z7ug)&HSmeBOJ{_Qk%4OllrK z_k6qOeV)(ryw`vH_xfJ|dBAh^c`c|wqj zf_z($?+ER8b$l;_ZFthaQ{wmg2A($Xj9{NN@B;%sH1M2(=Y`+};qau6A1TOGyjr{7 zSa9mDg5um+=YmtNIgO?Aalct@EX^pejk4wx^N?4syA8h^ z_{JZ8bL;sRsa|sZLy?N@7@vsb)2*3$h==E^=c)~NpRzL~;+^%%O}BNvEMGs{IOFl$S>|(pw}zI; zZj-tVZ^$%Kx$cRAYKa5RM#?kPRd-90Yi+E-@c3W}CQdRp+C_2`UYq1L5{=MFO@uJJ zuae2}aYJ%lbvL<`d%o?|Sj`PtJ#_l4Tk&Tm9#Nop8*v`0h)>U7cAE-ziEfN-2EW~b z)u!r#bdDfoD0GO3a)D6~`gv&*5k#U$3`c`VNnjEMa`>XCs2GXUtU>*Z*6Ny}kAB+ppbt`kIN4VARA%1^F1pO_T&TCCEJ( zRUmf32iXrM9>xPEK8MenI4ro2W1or73StW~BglS19>LeyyZ+^WU%Ogcbeks5V2K;K zcfj#pD-W1>5!~0=snJeH5Ae>I8jT;I!2BfzCJlm#VAE-zn;Px4ozFuZb=Y`{lnE0q z_EFbMQ_e1-;H<2;jYS31F(4RR(BZjQ{tfn>B{2Yqjy>+;WqT*@?i3QDRbY?#l;!W; z{M*yQ7!_>apkgl-Z0Vq4f(o{IP%%jbTR*6nrh;%7RFqMqkUb{-1oJBMSK+T#`XiLz zlS$x{q^Uqy;0Fj`N&|cvpW%}tutD1IoalGn7VAu$#W*MXowvt26Ob{^YQOVvtTTZe z>aQG%{_&(uI)`8tIl1G0NF#8s+Sal@>;s&?s$X zB1U;TOQXDPT3KOahDPKfMg==Zqk^5ca>6Jd8s)5f$4I@(^Cu%qL8A0kS(h$KZ{tfi z!m179CT6)P5?pit!j~yaa&`R^50X=9vx+%#8s>40e@BS!8ZKdh9RD}NTjC*d27Zcj zI7%*!SGdo=LN0?fcI6nkEdERcA17zx-`uSy$mQ@K?7~;c<#Cev&S6+LZX>VbYwux1 z$0`0Zl=pClWYZsrW!}6Z!-)~wOH8mPpdd=K*#K+Z(r7G*D2*a+P#Gq1gnnsyUmlv- zuO0~CvwLV}ncy*oCa*xBUc=C1LY}o%p|I3YV+cq|m1%2%if9U)3`^^%a&{_ErMfC& zOnT*QJx~!|p_krK6>K9=8C?}YN3Y%S5O`FcAUtOhzs95Z2G6JAHGGp?f=&A+zQwaA zu?NrMF>)$LbQumgjYXZuX>uv}yiF?Pbo>N6u}IDkZB*`t`91|I+o&jP9Teq#2J1a1 zgkTt2$Dm`QZWM)Psfbz6vR@h+>l=-G_A!dk#TanudBy8O$8?-y&v#Qb-C1vb@JLkQ z8P;4}=BM7mwuj$DvABH=I|PXMQyi8&r+-IrMDpo1>@40P`J9kjlIQU6D1J!t1;Otk zS;OxB>rSo$`F(II#DO9{1jBrK9~W=p!~I)06MI*lAw1;A#Y;Sl&cp02(K)y;OH->z zl%`jaELrL*)RLvG^25bStzuxuXM^YhQjE|Y#l7KODrDj|6qCF+_~uFmoVbzHfD?C$ Z7I5NL5Z`iDJ|%Fr`!#otdG2YU_CE%Qh@Sue literal 0 HcmV?d00001 diff --git a/etl-data-source/el-data-source-server/pom.xml b/etl-data-source/el-data-source-server/pom.xml new file mode 100644 index 0000000..df6f5e3 --- /dev/null +++ b/etl-data-source/el-data-source-server/pom.xml @@ -0,0 +1,115 @@ + + + 4.0.0 + + com.bwie + etl-data-source + 1.0-SNAPSHOT + + el-data-source-server + el-data-source-server + + 1.8 + UTF-8 + UTF-8 + 2.6.13 + + + + com.bwie + el-data-source-common + 1.0-SNAPSHOT + + + org.springframework.cloud + spring-cloud-starter-bootstrap + 3.1.3 + + + org.springframework.boot + spring-boot-configuration-processor + true + + + org.springframework + spring-jdbc + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-config + + + redis.clients + jedis + 3.7.0 + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + org.springframework.boot + spring-boot-starter-web + + + com.mysql + mysql-connector-j + runtime + + + org.springframework.boot + spring-boot-starter + + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + org.springframework.boot + spring-boot-dependencies + ${spring-boot.version} + pom + import + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.1 + + 1.8 + 1.8 + UTF-8 + + + + org.springframework.boot + spring-boot-maven-plugin + ${spring-boot.version} + + com.etl.data.source.server.ElDataSourceServerApplication + true + + + + repackage + + repackage + + + + + + + + diff --git a/etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/ElDataSourceServerApplication.java b/etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/ElDataSourceServerApplication.java new file mode 100644 index 0000000..8d13b2f --- /dev/null +++ b/etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/ElDataSourceServerApplication.java @@ -0,0 +1,19 @@ +package com.etl.data.source.server; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class ElDataSourceServerApplication { + + public static void main(String[] args) { + SpringApplication.run(ElDataSourceServerApplication.class, args); + System.out.println(" __ __ _ _ _ _"); + System.out.println(" ___ _ __ ___/ _|__ / /_ | | | | | | ___| |__"); + System.out.println(" / _ \\ '__/ _ \\ _/ _ \\ | '_ \\ | |_| | | |/ _ \\ '_ \\"); + System.out.println("| (_) | | | __/ | || __/| |_) || _ | | | __/ | | |"); + System.out.println(" \\___/|_| \\___|_| \\___| |_.__/ |_| |_| |_| \\___|_| |_|"); + System.out.println(" 数据源业务启动成功!"); + } + +} diff --git a/etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/GlobalExceptionHandler.java b/etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/GlobalExceptionHandler.java new file mode 100644 index 0000000..00e5e69 --- /dev/null +++ b/etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/GlobalExceptionHandler.java @@ -0,0 +1,42 @@ +package com.etl.data.source.server; + +import com.etl.common.result.Result; +import lombok.extern.log4j.Log4j2; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.FieldError; +import org.springframework.web.bind.MethodArgumentNotValidException; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; + +import java.util.List; +import java.util.stream.Collectors; + +@ControllerAdvice +@Log4j2 +public class GlobalExceptionHandler { + + @ExceptionHandler(MethodArgumentNotValidException.class) + public ResponseEntity> handleValidationExceptions(MethodArgumentNotValidException ex) { + List fieldErrors = ex.getBindingResult().getFieldErrors(); + + String errorMessage = fieldErrors.stream() + .map(FieldError::getDefaultMessage) + .collect(Collectors.joining(", ")); + + log.error(errorMessage); + + // 使用Result封装错误信息 + Result result = Result.error(errorMessage); + return new ResponseEntity<>(result, HttpStatus.BAD_REQUEST); + } + + @ExceptionHandler(Exception.class) + public ResponseEntity> handleException(Exception ex) { + log.error("General exception", ex); // 最好打印堆栈信息以便排查问题 + + // 使用Result封装错误信息 + Result result = Result.error(ex.getMessage()); + return new ResponseEntity<>(result, HttpStatus.INTERNAL_SERVER_ERROR); + } +} diff --git a/etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/config/Swagger.java b/etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/config/Swagger.java new file mode 100644 index 0000000..708f9a6 --- /dev/null +++ b/etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/config/Swagger.java @@ -0,0 +1,101 @@ +package com.etl.data.source.server.config; + +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeansException; +import org.springframework.beans.factory.config.BeanPostProcessor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.util.ReflectionUtils; +import org.springframework.web.servlet.mvc.method.RequestMappingInfoHandlerMapping; +import springfox.documentation.builders.ApiInfoBuilder; +import springfox.documentation.builders.PathSelectors; +import springfox.documentation.builders.RequestHandlerSelectors; +import springfox.documentation.service.ApiInfo; +import springfox.documentation.service.Contact; +import springfox.documentation.spi.DocumentationType; +import springfox.documentation.spring.web.plugins.Docket; +import springfox.documentation.spring.web.plugins.WebMvcRequestHandlerProvider; +import springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc; + +import java.lang.reflect.Field; +import java.util.List; +import java.util.stream.Collectors; + +@Configuration +@EnableSwagger2WebMvc +@Slf4j +public class Swagger { + + @Bean(value = "defaultApi") + public Docket defaultApi() { + Docket docket = new Docket(DocumentationType.SWAGGER_2) + .apiInfo(apiInfo()) + //分组名称 + .groupName("2.X版本") + .select() + //这里指定Controller扫描包路径 +// .apis(RequestHandlerSelectors.basePackage("com.github.xiaoymin.knife4j.controller")) + //这里指定扫描有ApiOperation注解的类 + .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)) + //所有路径 + .paths(PathSelectors.any()) + //不包含^/inner/.*的路径 + //.paths(input -> !input.matches("^/inner/.*")) + .build(); + return docket; + } + + private ApiInfo apiInfo() { + return new ApiInfoBuilder() + .title("七组RESTful APIs") + .description("构建RESTful APIs") + .termsOfServiceUrl("https://blog.csdn.net/weixin_43453386") + .contact(new Contact("刘泽璋", + "https://blog.csdn.net/weixin_43453386", + "xxx@163.com")) + .version("1.0") + .build(); + } + /** + * 解决SpringBoot和Swagger2冲突 + * + * @return + */ + @Bean + public static BeanPostProcessor springfoxHandlerProviderBeanPostProcessor() { + return new BeanPostProcessor() { + + @Override + public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException { + if (bean instanceof WebMvcRequestHandlerProvider) { + customizeSpringfoxHandlerMappings(getHandlerMappings(bean)); + } + return bean; + } + + private void customizeSpringfoxHandlerMappings(List mappings) { + List copy = mappings.stream() + .filter(mapping -> mapping.getPatternParser() == null) + .collect(Collectors.toList()); + mappings.clear(); + mappings.addAll(copy); + } + + @SuppressWarnings("unchecked") + private List getHandlerMappings(Object bean) { + try { + Field field = ReflectionUtils.findField(bean.getClass(), "handlerMappings"); + field.setAccessible(true); + return (List) field.get(bean); + } catch (IllegalArgumentException | IllegalAccessException e) { + log.warn("修改WebMvcRequestHandlerProvider的属性:handlerMappings出错,可能导致swagger不可用", e); + throw new IllegalStateException(e); + } + } + }; + } +} + + + diff --git a/etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/controller/DatabaseController.java b/etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/controller/DatabaseController.java new file mode 100644 index 0000000..4ebc8f6 --- /dev/null +++ b/etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/controller/DatabaseController.java @@ -0,0 +1,75 @@ +package com.etl.data.source.server.controller; + +import com.etl.common.result.Result; +import com.etl.data.source.common.pojo.DatabaseConfig; +import com.etl.data.source.common.pojo.DatabaseRedis; +import com.etl.data.source.common.pojo.resq.ColumnInfo; +import com.etl.data.source.server.service.DatabaseService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import redis.clients.jedis.Jedis; + +import javax.validation.Valid; +import java.util.List; + + +// 声明为一个 Spring Boot 控制器 +@RestController +@Api(tags = "数据源") +@Slf4j +public class DatabaseController { + @Autowired + private DatabaseService databaseService; + + @PostMapping("/testDatabaseRedis") + public Result testDatabaseRedis(@Valid @RequestBody DatabaseRedis databaseRedis) { + try (Jedis jedis = new Jedis(databaseRedis.getUrl(), Integer.parseInt(databaseRedis.getPort()))) { + // 测试连接,例如设置一个键并获取它 + String testKey = "testKey"; + String testValue = "testValue"; + jedis.set(testKey, testValue); + String result = jedis.get(testKey); + + // 假设Result是一个泛型类,用于封装响应结果 + return Result.success(result); + } catch (Exception e) { + // 处理异常,例如记录日志或返回错误结果 + log.info("Redis test failed: " + e.getMessage()); + return Result.error("连接失败"); + } + } + // POST请求映射到/test-database-connection路径 + @PostMapping("/testDatabaseMysql") + @ApiOperation(value = "测试数据库连接") + public Result testDatabaseConnection(@Valid @RequestBody DatabaseConfig config) { + String string = databaseService.testDatabaseConnection(config); + if (string.equals("ok")) { + return Result.success("连接成功"); + } else { + return Result.error("连接失败"); + } + } + @PostMapping("/findDatabaseTable") + @ApiOperation(value = "查询数据库表") + public Result> findDatabaseTable(@Valid @RequestBody DatabaseConfig config){ + return Result.success(databaseService.findDatabaseTable(config)); + } + @PostMapping("/findDatabaseTableName") + @ApiOperation("查询指定数据库的所有表名") + public Result> findDatabaseTableName(@Valid @RequestBody DatabaseConfig config){ + return Result.success(databaseService.findDatabaseTables(config)); + } + @PostMapping("/findDatabaseTableField") + @ApiOperation("查询指定数据库的指定表的所有字段") + public Result> findDatabaseTableField(@Valid @RequestBody DatabaseConfig config){ + return Result.success(databaseService.findDatabaseTableField(config)); + } + + +} diff --git a/etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/service/DatabaseService.java b/etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/service/DatabaseService.java new file mode 100644 index 0000000..f58747f --- /dev/null +++ b/etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/service/DatabaseService.java @@ -0,0 +1,22 @@ +package com.etl.data.source.server.service; + +import com.etl.data.source.common.pojo.DatabaseConfig; +import com.etl.data.source.common.pojo.resq.ColumnInfo; + +import java.util.List; + +/** + * @ClassName DatabaseService + * @Description 描述 + * @Author ZeZhang.Liu + * @Date 2024/6/21 20:16 + */ +public interface DatabaseService { + String testDatabaseConnection(DatabaseConfig config); + + List findDatabaseTable(DatabaseConfig config); + + List findDatabaseTables(DatabaseConfig config); + + List findDatabaseTableField(DatabaseConfig config); +} diff --git a/etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/service/impl/DatabaseServiceImpl.java b/etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/service/impl/DatabaseServiceImpl.java new file mode 100644 index 0000000..c2a3c4f --- /dev/null +++ b/etl-data-source/el-data-source-server/src/main/java/com/etl/data/source/server/service/impl/DatabaseServiceImpl.java @@ -0,0 +1,174 @@ +package com.etl.data.source.server.service.impl; + +import com.etl.common.util.StringUtils; +import com.etl.data.source.common.pojo.DatabaseConfig; +import com.etl.data.source.common.pojo.constants.MysqlConstants; +import com.etl.data.source.common.pojo.resq.ColumnInfo; +import com.etl.data.source.server.service.DatabaseService; +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.jdbc.datasource.DriverManagerDataSource; +import org.springframework.stereotype.Service; + +import javax.sql.DataSource; +import java.sql.*; +import java.util.ArrayList; +import java.util.List; +import java.util.Properties; + +/** + * @ClassName DatabaseServiceImpl + * @Description 描述 + * @Author ZeZhang.Liu + * @Date 2024/6/21 20:16 + */ +@Service +public class DatabaseServiceImpl implements DatabaseService { + @Override + public String testDatabaseConnection(DatabaseConfig config) { + try { + // 创建数据源 + DataSource dataSource = createDataSource(config); + // 使用JdbcTemplate执行SQL语句 + JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource); + jdbcTemplate.execute("SELECT 1"); + // 如果连接成功,返回"ok" + return "ok"; + } catch (Exception e) { + // 如果发生异常,打印异常信息并返回"error" + e.printStackTrace(); + return "error"; + } + } + + @Override + public List findDatabaseTable(DatabaseConfig config) { + List tableNames = new ArrayList<>(); + try (Connection connection = getConnection(config)) { + try (Statement statement = connection.createStatement()) { + // 查询所有数据库名 + try (ResultSet resultSet = statement.executeQuery("SHOW DATABASES;")) { + while (resultSet.next()) { + tableNames.add(resultSet.getString(1)); + } + } + } + } catch (ClassNotFoundException | SQLException e) { + e.printStackTrace(); + } + return tableNames; + } + + @Override + public List findDatabaseTables(DatabaseConfig config) { + if(StringUtils.isNull(config.getWarehouseName())){ + throw new RuntimeException("请选择数据库"); + } + List tableNames = new ArrayList<>(); + try (Connection connection = getConnection(config)) { + try (Statement statement = connection.createStatement()) { + // 查询指定数据库的所有表名 + try (ResultSet resultSet = statement.executeQuery( + "SHOW TABLES FROM " + config.getWarehouseName() + ";")) { + while (resultSet.next()) { + tableNames.add(resultSet.getString(1)); + } + } + } + } catch (ClassNotFoundException | SQLException e) { + e.printStackTrace(); + } + return tableNames; + } + + @Override + public List findDatabaseTableField(DatabaseConfig config) { + if(StringUtils.isNull(config.getWarehouseName())){ + throw new RuntimeException("请选择数据库"); + } + if(StringUtils.isNull(config.getTableName())){ + throw new RuntimeException("请选择表"); + } + List columnInfos = new ArrayList<>(); + Connection connection = null; + PreparedStatement preparedStatement = null; + ResultSet resultSet = null; + + try { + // 加载并注册JDBC驱动 + Class.forName(config.getDriverClassName()); + + // 建立数据库连接 + connection = DriverManager.getConnection(config.getUrl(), config.getUsername(), config.getPassword()); + + // 创建PreparedStatement以避免SQL注入 + String sql = "SELECT " + + "COLUMN_NAME, " + + "DATA_TYPE, " + + "CHARACTER_MAXIMUM_LENGTH, " + + "COLUMN_KEY, " + + "IS_NULLABLE, " + + "COLUMN_COMMENT " + + "FROM INFORMATION_SCHEMA.COLUMNS " + + "WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ?"; + + preparedStatement = connection.prepareStatement(sql); + preparedStatement.setString(1, config.getWarehouseName()); + preparedStatement.setString(2, config.getTableName()); + + // 执行查询 + resultSet = preparedStatement.executeQuery(); + + // 遍历结果集 + while (resultSet.next()) { + ColumnInfo columnInfo = new ColumnInfo(); + columnInfo.setColumnName(resultSet.getString("COLUMN_NAME")); + columnInfo.setDataType(resultSet.getString("DATA_TYPE")); + columnInfo.setCharacterMaximumLength(resultSet.getInt("CHARACTER_MAXIMUM_LENGTH")); // 注意可能为null + columnInfo.setColumnKey(resultSet.getString("COLUMN_KEY")); + columnInfo.setIsNullable(resultSet.getString("IS_NULLABLE")); + columnInfo.setColumnComment(resultSet.getString("COLUMN_COMMENT")); + + columnInfos.add(columnInfo); + } + + } catch (ClassNotFoundException | SQLException e) { + // 处理异常 + e.printStackTrace(); + } finally { + // 关闭资源 + try { + if (resultSet != null) resultSet.close(); + if (preparedStatement != null) preparedStatement.close(); + if (connection != null) connection.close(); + } catch (SQLException e) { + e.printStackTrace(); + } + } + + return columnInfos; + } + + + private static Connection getConnection(DatabaseConfig config) throws ClassNotFoundException, SQLException { + // 加载MySQL驱动 + Class.forName(config.getDriverClassName()); + // 设置数据库连接信息 + String url = config.getUrl(); + Properties properties = new Properties(); + properties.setProperty(MysqlConstants.MYSQL_USER, config.getUsername()); + properties.setProperty(MysqlConstants.MYSQL_PASSWORD, config.getPassword()); + // 获取数据库连接 + return DriverManager.getConnection(url, properties); + } + + private DataSource createDataSource(DatabaseConfig config) { + // 使用DriverManagerDataSource创建数据源 + DriverManagerDataSource dataSource = new DriverManagerDataSource(); + // 设置数据源的驱动类名、URL、用户名和密码 + dataSource.setDriverClassName(config.getDriverClassName()); + dataSource.setUrl(config.getUrl()); + dataSource.setUsername(config.getUsername()); + dataSource.setPassword(config.getPassword()); + return dataSource; + } +} diff --git a/etl-data-source/el-data-source-server/src/main/resources/bootstrap.yml b/etl-data-source/el-data-source-server/src/main/resources/bootstrap.yml new file mode 100644 index 0000000..86f79de --- /dev/null +++ b/etl-data-source/el-data-source-server/src/main/resources/bootstrap.yml @@ -0,0 +1,27 @@ +# Tomcat +server: + port: 8886 +# Spring +spring: + application: + # 应用名称 + name: etl-data-source-service + profiles: + # 环境配置 + active: dev + main: + # 允许使用循环引用 + allow-circular-references: true + # 允许定义相同的bean对象 去覆盖原有的 + allow-bean-definition-overriding: true + cloud: + nacos: + discovery: + # 服务注册地址 + server-addr: 182.254.221.163:8848 + config: + # 配置中心地址 + server-addr: 182.254.221.163:8848 + # 配置文件格式 + file-extension: yml + diff --git a/etl-data-source/el-data-source-server/src/test/java/com/etl/data/source/server/ElDataSourceServerApplicationTests.java b/etl-data-source/el-data-source-server/src/test/java/com/etl/data/source/server/ElDataSourceServerApplicationTests.java new file mode 100644 index 0000000..00fb8a7 --- /dev/null +++ b/etl-data-source/el-data-source-server/src/test/java/com/etl/data/source/server/ElDataSourceServerApplicationTests.java @@ -0,0 +1,39 @@ +package com.etl.data.source.server; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; +import java.sql.*; +import java.util.*; + +@SpringBootTest +class ElDataSourceServerApplicationTests { + @Test + void contextLoads() { +// List list = Arrays.asList("a", "b", "c"); +// list.forEach(item -> System.out.println("Lambda方式遍历元素: "+item)); + //创建一个未排序的列表 + List list = Arrays.asList("b", "a", "c","aa"); + //使用传统方式进行排序 +// Collections.sort(list, new Comparator() { +// @Override +// public int compare(String o1, String o2) { +// return o1.compareTo(o2); +// } +// }); +// +// System.out.println("传统方式排序结果:"+list); +// list.sort((s1,s2) -> s1.compareTo(s2)); +// System.out.println("Lambda方式排序结果:"+list); + //创建一个新的列表来存储过滤后的结果 +// ArrayList filteredLis = new ArrayList<>(); +// //使用传统方式过滤 +// for (String item : list) { +// if(item.startsWith("a")){ +// filteredLis.add(item); +// } +// } +// //打印过滤后的列表 +// System.out.println("传统过滤结果:"+filteredLis); + } + +} diff --git a/etl-data-source/el-data-source-server/target/classes/bootstrap.yml b/etl-data-source/el-data-source-server/target/classes/bootstrap.yml new file mode 100644 index 0000000..86f79de --- /dev/null +++ b/etl-data-source/el-data-source-server/target/classes/bootstrap.yml @@ -0,0 +1,27 @@ +# Tomcat +server: + port: 8886 +# Spring +spring: + application: + # 应用名称 + name: etl-data-source-service + profiles: + # 环境配置 + active: dev + main: + # 允许使用循环引用 + allow-circular-references: true + # 允许定义相同的bean对象 去覆盖原有的 + allow-bean-definition-overriding: true + cloud: + nacos: + discovery: + # 服务注册地址 + server-addr: 182.254.221.163:8848 + config: + # 配置中心地址 + server-addr: 182.254.221.163:8848 + # 配置文件格式 + file-extension: yml + diff --git a/etl-data-source/el-data-source-server/target/classes/com/etl/data/source/server/ElDataSourceServerApplication.class b/etl-data-source/el-data-source-server/target/classes/com/etl/data/source/server/ElDataSourceServerApplication.class new file mode 100644 index 0000000000000000000000000000000000000000..d16812d15f9f1f3837dff09523a2d26be8f4945b GIT binary patch literal 1327 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 H&SU=pj&GH$ literal 0 HcmV?d00001 diff --git a/etl-data-source/el-data-source-server/target/classes/com/etl/data/source/server/config/Swagger.class b/etl-data-source/el-data-source-server/target/classes/com/etl/data/source/server/config/Swagger.class new file mode 100644 index 0000000000000000000000000000000000000000..a18a893813d9ceb0bc8ace5688c5ee8ddd76c612 GIT binary patch literal 3202 zcmbVOTT>KQ5dMbS><$wztI?<=0l^3oc3`;#MU8-nB&!e>QKFH|&YoQchnaOQup}`i z(Ii@V%Tpdw`2~4Mv}&QGk{^)Y5%piB(r0GC<+7k|)lQ#tru+2QU-#)V|NQslZvb6* z7)2unBpkz_i1Sel;ev!p3`?|pk&i|q_=wAo`6DUfl7!0`l`w`+B#a})M-%*UMZ~0p zy%>z(Dwo$HnBwx&2(EK^L&Rqh+>Bsa!XbRlm(&Q-Tx$H05y2!ha2#0)In0RA1;`_& z$?QQxbsXjhs5GpcfLPM9bBbeRyJnT7mCG@^Pe9FS-PGN)q|@9oDWGc5$}j=Dle)<+ zdvj@KPpD~wR>)XWjY-wk`8-^#a%XhfzBQ>?a|&|}C8N5k;#i)oF~wo_JhK(eGP8P4 zNiC?MM=8Uys%N>zq+>&(iwr=LKRzb;Fnm5NxS9NvERDyM7fu)ta;pKGGQO;Z1 zE#`9Aq)H#0)`xXzwWd&DJ*Ho1O zrkVt$dR{d=Vn|f;`iPmeh>z`pB35)_hoa}oWZ$wD|3%fz7|b5Ct$97eY`*`P<+wE0 znB!QsfU~r-pTrI5(xmDrSygi_dvTTWP4?tWQZ>F;Q+s>6fc>kxtuKklY0U_WLQ46$ zyrAduK>^Xvq~5S%cm?Tl0*s1jxuEOiVJ-wuCnx{d96>z zaWu8&$JF8VO5X|Y+ z{kwec`O5wAq0~gyGwS=tM##(8xJz%I{dWK9%9HhPzTt0<&A4vfIi)CRI`whQ$(V7I zxpa*5f^JTCb#`@kcJ}tj_?9alFUwt6r<6RG%8ICY`rwymkN)LcqQof~Shm}pl^_EN1+F=-H zw>{>#VOLz;fjad51>K#w#M~Jx^P+Q8A1DpfzxyaoKXlL44JGTDnt!j1*({@Ls>=w) znQ|zC^&P^X`;wYIA({?dmvi(=d~Zotyd2Oqy2ey@ri7$Q)m#)%Pnp_*g6cdOQViAp zP9$C3R(87q~+6;3vThDXu1?+X1J?D&OQ$d|yu?+zyxA3&N zW;d_!qa^YR$8S(Kc0N>LGux*8%ZDM-$Bg5LaB$;i)P>;QrB;$-Zt!JAZMZb3)oR>m z*+*Y)jr0`>2sq5IG#b^=nC>-tw$e-?DUhr_v4o00X;6XpLnWXNZ8Vkx1;k02Z`6(s z(&EN<=;O13WZMcVryikd$={}?2r(8ZB3gtLt6hd%#2d@lRmAQh_9R>XAcMfkQAB85 zk6J>xk8mD96OItZ210k7T(^=-4&XrGBm~e(vjjQ`NEf}^MY5azJ=Y;P1g(PKwlwGP zJU>>7aRqy)mJo~WD`J1_%_0uO4i@p&3Jy)h4#y70jx3?Bh__?!6!C5m^&0^u5G8lJ z$lX42)rcN~c#<5PB0z}}hLjLsl-`~qARI!y4;_fCpn)J9<$DVy3=jH2@RW1|dm`w= z=@5J!N&c&P1Yx699T9hCErkuCW;E8gjHbsBcp6Kc9HBIwrL_ut=)03>bdKiz^nZ{3 L5@|P(B$)pL31y)p literal 0 HcmV?d00001 diff --git a/etl-data-source/el-data-source-server/target/classes/com/etl/data/source/server/controller/DatabaseController.class b/etl-data-source/el-data-source-server/target/classes/com/etl/data/source/server/controller/DatabaseController.class new file mode 100644 index 0000000000000000000000000000000000000000..2004636cf05cda92cfb791d15faa747cdbbf6d9d GIT binary patch literal 4929 zcmcIn{dW}Q6@F&3$!sE-uJoBy>st7 z|Nh_2e*tL4^(Z!AM8@GLG8h#PGYSjYC_*?AL2Cq$h^{RjP82S3qBkaEJc=baDr2G= z>+y3LzldTvMk4s7Xnz&OGW=Tfep7>&@NxvN2-)9?y|32bcX%y=*Q0m?$0B%BjNcNE zx5eYQjCZ1V7bj%=UP492N=t}!TXtG?GQ+JSYPXe6>vo%jWhu?ohBQYX(CslJsY__> zPFka??q*c6q&im4PU@<|W!?4~?oxNpm7=0}f6jD`QGL*GjG>I)Zkm>>xrSvr5_b3} zXKlkw58K+PK5p5E)gfIo9d%esx|ThmYDEFHJ?C2EhOMWlwrZzg8tyLI(AYF6A>3)D zh;doBVd}lP(IMU5ukkd`xTKaD)NDhHgUPUa$l&pbyIGX9OxLzD85&nGsPgTKsTu}95tCSbklWIZ(4m)%u!ULNL`7}$B!oU ztndrhmIx0E=LdGFMVMlt;QEElqJ{xiOCIjgvL53MIvIc9Yrw#kaZ<(~8QDZXV5CjW z&Dn&K{AQ`!Sz=kh)-D>hy==gZ>qF|0VWvuBt}3QpcIIpF7d8Z1-hO@h;_0HU z|D1j`f9$3FhsS2lUYI^{obvPZ?lJUCO2Vmcos)7^sx(zGO&(D@txRsz>@tU~wq5*_ zP(R<`0P)rZE%rE|#YO9xNH$weW6NN zE-|q*xU=F!{@`6Am&;*SOS3dp`@YKGJfUDSnpu|@EDlW73QplY1@GfM8Glmn0Zt34 zKP&hUe^Kxe&M<{5_!wsud?J*sn5|9w582kZsI?0IicjY(6-$hQhp~}#%u4w=x+7;~ zQo2ncukbX81lBODk-Jo)LBTnErr^8)c0mC9n}WaN9}*P*9i0C3^32t93jT@D6?_kk zGA=6Ehf5Md77Ncw1(Ud3+?{{p#PpkI6g-P73ce7J7jT7sC>K4!9fv7y;TwUBs|v1R zNTQV%pBQ?%pdt|Si+ylWU=B^|?$b8&*viJH`K6Ed z2(I^8HnA+9h1X@eI@2BFHLKZ<&LI;*<9zX^F22xZ=DWnrtHRMKwxi5)8AbD_sDRKU zY%HUoyd_R9nbaMI^tMtFpXz%Ts>)=>a`-AP(Nd{_TsBJ{9i4e;b*Zvq47Ujjt9T92 zP3~za-4om@=3@+kn6F-xmi17-mga#G*DCn3_Rjk@-%^9AXaV*Kp;EVPi;kLOauLDZ zLW3~271nwAC|=&~es7ns`#$pYY-9z{$Q^GaT87S=6ITUiJtv{#e$OdZL0TA_S8aG= z{hciD@xLgT3+WgCLx*+0)Tf;p&2bn*cS^Ql9Y3u$@RKftH6nL;J?0olXkx#L?IyM| zTP9aNTR2kLN^C1PU59j;oe;M0DK>*@R6Z4d1GeJ(9MM(y0V;*Clt&mfocru6gbr+; zLIr=}8>qaFsvfB~CMUwNNTRYi9*$Q|q52tirVve3#j9?hCLuR}jkPUbqpo=h%6Y^R zk(PL53QNyJ7Bg{qG7*l4d*k6-iRwGIMqA?1lC9OZdaj`MD=a^79kJMoDXgT1IyO^S z^(E>uhu$j$6(MNqy>lg)oXD)h!-KozyMz62kao9qOI^)*+wpa z21>6-91meF>E1}Hw~*xRBzb`CAlDDF{|ZU|m^2FppWw-Hp54k_VM_fFkFZzi$vw(m z6;{B+4$g-tw*d*Xu}5A5&P8u0`Mq4bjao$KtWYZP9OZlk=NdL$#hT4u;(-u)nqv=6VeJQ~j(vwwF&TIY0pl_9 z1;$$qxm!u5*5FZ((FR{nk)H1M0Z~sOJ{}>Zc2W zYA6e;<32(CtN`lZB0#;cAgFa^LG4`xs29sHr4>L8-4j#<$zs}DN1uy-)v@(A@X!~i f6{$}uNquqpEXBDHbnny{d&3;3x$BS@`o{kOW=2r4 literal 0 HcmV?d00001 diff --git a/etl-data-source/el-data-source-server/target/classes/com/etl/data/source/server/service/DatabaseService.class b/etl-data-source/el-data-source-server/target/classes/com/etl/data/source/server/service/DatabaseService.class new file mode 100644 index 0000000000000000000000000000000000000000..837743a2cc51459d111abc4ec680716af2776823 GIT binary patch literal 654 zcmb_aO-sZu5S^@b>#kp`h`&KE2E<#%gS#vU1rHVPX*(?`X`=bqALqdz;Exigi>r$j z1of266pi1_zbY$(2U;`q$FxZ44 X^<(M|V2kR}mwLQbZxeE7iQIhy_OHo} literal 0 HcmV?d00001 diff --git a/etl-data-source/el-data-source-server/target/classes/com/etl/data/source/server/service/impl/DatabaseServiceImpl.class b/etl-data-source/el-data-source-server/target/classes/com/etl/data/source/server/service/impl/DatabaseServiceImpl.class new file mode 100644 index 0000000000000000000000000000000000000000..eb22ae2f08e961d10a54d460f3c433e4035119c5 GIT binary patch literal 8250 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 YJq5SsSR?oa*lc3JX9mc;<3bVmFQ8~Gxc~qF literal 0 HcmV?d00001 diff --git a/etl-data-source/el-data-source-server/target/maven-archiver/pom.properties b/etl-data-source/el-data-source-server/target/maven-archiver/pom.properties new file mode 100644 index 0000000..935ab4d --- /dev/null +++ b/etl-data-source/el-data-source-server/target/maven-archiver/pom.properties @@ -0,0 +1,5 @@ +#Generated by Maven +#Fri Jun 21 15:04:44 CST 2024 +groupId=com.bwie +artifactId=el-data-source-server +version=1.0-SNAPSHOT diff --git a/etl-data-source/el-data-source-server/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/etl-data-source/el-data-source-server/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst new file mode 100644 index 0000000..8fc62ec --- /dev/null +++ b/etl-data-source/el-data-source-server/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst @@ -0,0 +1 @@ +com\etl\data\source\server\ElDataSourceServerApplication.class diff --git a/etl-data-source/el-data-source-server/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/etl-data-source/el-data-source-server/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst new file mode 100644 index 0000000..050180e --- /dev/null +++ b/etl-data-source/el-data-source-server/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst @@ -0,0 +1 @@ +D:\workspace\etl-cloud\etl-data-source\el-data-source-server\src\main\java\com\etl\data\source\server\ElDataSourceServerApplication.java diff --git a/etl-data-source/el-data-source-server/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst b/etl-data-source/el-data-source-server/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst new file mode 100644 index 0000000..f7ea04e --- /dev/null +++ b/etl-data-source/el-data-source-server/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst @@ -0,0 +1 @@ +com\etl\data\source\server\ElDataSourceServerApplicationTests.class diff --git a/etl-data-source/el-data-source-server/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst b/etl-data-source/el-data-source-server/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst new file mode 100644 index 0000000..688572d --- /dev/null +++ b/etl-data-source/el-data-source-server/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst @@ -0,0 +1 @@ +D:\workspace\etl-cloud\etl-data-source\el-data-source-server\src\test\java\com\etl\data\source\server\ElDataSourceServerApplicationTests.java diff --git a/etl-data-source/el-data-source-server/target/test-classes/com/etl/data/source/server/ElDataSourceServerApplicationTests.class b/etl-data-source/el-data-source-server/target/test-classes/com/etl/data/source/server/ElDataSourceServerApplicationTests.class new file mode 100644 index 0000000000000000000000000000000000000000..1729aefba514e9749f066de71c6e2aacc12ad51b GIT binary patch literal 1800 zcmbtVTUQ%Z6#h;UG9gS0O_JCg(g_3~g==A1L%-e+IFy?64$_@3AUQlz5J+7JDvm&J-u0cOdbQ+)E3)Jf$>oEx z^a?U`^?M6UsSP(0n9Y}is^uupsz@cRD5!^J$BLZrrW0D1yo&_w7_(z&u2%EhvQ%#1 zuQ-v4rUcA#;49}7l@DZv22-wbs@mtKyeTbD`sk6WOY@lNsu`pmnDo^*%!{BOPixcK<>5fURWt#-gmn zd>L3`=?q*E7`R&Zm0NWRZsd~AIo}UdOb7!X%m?ARwOMCbxYkHTXvvyuX|Cu$+obZc ztE+PAzu7&bITSb-Ta9X(#kEjYosWa?hE)mzWholAS_QD|SYw`e?9apij+5>Eg%A)W zJ~S-K0tqP%ESq>6R|O8ox^ZE4_+jcMY^*SO6Yrp4VioV2DB_xl>v+$=`zAiXhXTj; zJDRV%Ud0J%_P6i9da(WF?>~KdfBWkP+n?S4;`2!pA3^G+WTK3U0msA|)&V9!KKhALWh)dmM+xFd?zSdGv`QdTPa zr0p0f?d*W9C?3ybP^bUaoVkIu%-&Ko=*TJ~Ov_r$@o91V@BBRyLaWZaxJSPo!N2Hd zRM5;qU~l?6KN-!A+#4Y&)Sa$8e_zgRMhbWu$M_ShKM6jZ0|-3Mlf_+d?;5=W@og*~ z literal 0 HcmV?d00001 diff --git a/etl-data-source/pom.xml b/etl-data-source/pom.xml new file mode 100644 index 0000000..1fa721f --- /dev/null +++ b/etl-data-source/pom.xml @@ -0,0 +1,17 @@ + + + 4.0.0 + + com.bwie + etl-cloud + 1.0-SNAPSHOT + + etl-data-source + etl-data-source + pom + + el-data-source-server + el-data-source-common + + diff --git a/etl-gateway/pom.xml b/etl-gateway/pom.xml index d0fa0ed..5c9f651 100644 --- a/etl-gateway/pom.xml +++ b/etl-gateway/pom.xml @@ -62,11 +62,6 @@ spring-cloud-starter-gateway 3.1.3 - - org.springframework.boot - spring-boot-starter-test - test - diff --git a/etl-gateway/src/main/resources/bootstrap.yml b/etl-gateway/src/main/resources/bootstrap.yml new file mode 100644 index 0000000..6aa11fb --- /dev/null +++ b/etl-gateway/src/main/resources/bootstrap.yml @@ -0,0 +1,31 @@ +# Tomcat +server: + port: 18080 +# Spring +spring: + application: + # 应用名称 + name: etl-gateway + profiles: + # 环境配置 + active: dev + main: + # 允许使用循环引用 + allow-circular-references: true + # 允许定义相同的bean对象 去覆盖原有的 + allow-bean-definition-overriding: true + cloud: + nacos: + discovery: + # 服务注册地址 + server-addr: 182.254.221.163:8848 + namespace: 10a15e4b-3457-44dc-9378-cc25849f1872 + config: + # 配置中心地址 + server-addr: 182.254.221.163:8848 + namespace: 10a15e4b-3457-44dc-9378-cc25849f1872 + # 配置文件格式 + file-extension: yml + # 共享配置 + shared-configs: + - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} diff --git a/pom.xml b/pom.xml index ce08678..d383cbe 100644 --- a/pom.xml +++ b/pom.xml @@ -11,6 +11,7 @@ etl-common etl-gateway + etl-data-source