commit 7e2d0adb86f520cfb5c6230be55a95c5cb8777d4 Author: dunzhida <2652102136@qq.com> Date: Wed Aug 9 17:37:40 2023 +0800 git init diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..73f69e0 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml +# Editor-based HTTP Client requests +/httpRequests/ diff --git a/.idea/compiler.xml b/.idea/compiler.xml new file mode 100644 index 0000000..a6154ea --- /dev/null +++ b/.idea/compiler.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 0000000..d16147a --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 0000000..33adf3e --- /dev/null +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,81 @@ + + + + \ No newline at end of file diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml new file mode 100644 index 0000000..a4d8568 --- /dev/null +++ b/.idea/jarRepositories.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..b784bbc --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,12 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..6957841 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/etl-task-schdeling-common/etl-task-schdeling-common.iml b/etl-task-schdeling-common/etl-task-schdeling-common.iml new file mode 100644 index 0000000..1daccae --- /dev/null +++ b/etl-task-schdeling-common/etl-task-schdeling-common.iml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/etl-task-schdeling-common/pom.xml b/etl-task-schdeling-common/pom.xml new file mode 100644 index 0000000..2db1042 --- /dev/null +++ b/etl-task-schdeling-common/pom.xml @@ -0,0 +1,120 @@ + + + + etl-task-scheduling + com.yun + 3.6.3 + + 4.0.0 + + etl-task-schdeling-common + + + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-config + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-sentinel + + + + + org.springframework.boot + spring-boot-starter-actuator + + + + + io.springfox + springfox-swagger-ui + ${swagger.fox.version} + + + + + com.mysql + mysql-connector-j + + + + com.yun + yun-common-core + + + + + + + org.springframework.cloud + spring-cloud-starter-bootstrap + + + + + + org.springframework.cloud + spring-cloud-starter-loadbalancer + + + + org.springframework.cloud + spring-cloud-starter-openfeign + + + + io.jsonwebtoken + jjwt + 0.9.1 + + + + com.alibaba + fastjson + 1.2.80 + + + + org.springframework.boot + spring-boot-starter-data-redis + + + + org.springframework.boot + spring-boot-starter-validation + + + + org.apache.commons + commons-lang3 + + + + org.projectlombok + lombok + + + + cn.hutool + hutool-all + 5.8.3 + + + + + + diff --git a/etl-task-schdeling-common/src/main/java/com/bwie/common/constants/Constants.java b/etl-task-schdeling-common/src/main/java/com/bwie/common/constants/Constants.java new file mode 100644 index 0000000..e90f0f7 --- /dev/null +++ b/etl-task-schdeling-common/src/main/java/com/bwie/common/constants/Constants.java @@ -0,0 +1,18 @@ +package com.bwie.common.constants; + +/** + * @description: 系统常量 + * @author Dzd + */ +public class Constants { + /** + * 成功标记 + */ + public static final Integer SUCCESS = 200; + public static final String SUCCESS_MSG = "操作成功"; + /** + * 失败标记 + */ + public static final Integer ERROR = 500; + public static final String ERROR_MSG = "操作异常"; +} diff --git a/etl-task-schdeling-common/src/main/java/com/bwie/common/constants/JwtConstants.java b/etl-task-schdeling-common/src/main/java/com/bwie/common/constants/JwtConstants.java new file mode 100644 index 0000000..ba9710a --- /dev/null +++ b/etl-task-schdeling-common/src/main/java/com/bwie/common/constants/JwtConstants.java @@ -0,0 +1,29 @@ +package com.bwie.common.constants; + +/** + * @author Dzd + * @description: Jwt常量 + */ +public class JwtConstants { + + /** + * 用户ID字段 + */ + public static final String DETAILS_USER_ID = "user_id"; + + /** + * 用户名字段 + */ + public static final String DETAILS_USERNAME = "username"; + + /** + * 用户标识 + */ + public static final String USER_KEY = "user_key"; + + /** + * 令牌秘钥 + */ + public final static String SECRET = "abcdefghijklmnopqrstuvwxyz"; + +} diff --git a/etl-task-schdeling-common/src/main/java/com/bwie/common/constants/TokenConstants.java b/etl-task-schdeling-common/src/main/java/com/bwie/common/constants/TokenConstants.java new file mode 100644 index 0000000..4624b2f --- /dev/null +++ b/etl-task-schdeling-common/src/main/java/com/bwie/common/constants/TokenConstants.java @@ -0,0 +1,24 @@ +package com.bwie.common.constants; + +/** + * @author Dzd + * @description: 令牌常量 + */ +public class TokenConstants { + /** + * 缓存有效期,默认720(分钟) + */ + public final static long EXPIRATION = 720; + /** + * 缓存刷新时间,默认120(分钟) + */ + public final static long REFRESH_TIME = 120; + /** + * 权限缓存前缀 + */ + public final static String LOGIN_TOKEN_KEY = "login_tokens:"; + /** + * token标识 + */ + public static final String TOKEN = "token"; +} diff --git a/etl-task-schdeling-common/src/main/java/com/bwie/common/domain/Config.java b/etl-task-schdeling-common/src/main/java/com/bwie/common/domain/Config.java new file mode 100644 index 0000000..79144cf --- /dev/null +++ b/etl-task-schdeling-common/src/main/java/com/bwie/common/domain/Config.java @@ -0,0 +1,31 @@ +package com.bwie.common.domain; + +import lombok.Data; + +/** + * @author Dunzhida + * data 2023/7/30 21:16 + * fileName Middle + */ +/* +* 配置表 +* */ +@Data +public class Config { + /* + * 配置表的主键Id + * */ + private Integer configId; + /* + * 主表的任务Id + * */ + private Integer improt1Id; + /* + * 副表的任务Id + * */ + private Integer improt2Id; + /* + * 关联表的任务Id + * */ + private Integer improt3Id; +} diff --git a/etl-task-schdeling-common/src/main/java/com/bwie/common/domain/LoadEntity.java b/etl-task-schdeling-common/src/main/java/com/bwie/common/domain/LoadEntity.java new file mode 100644 index 0000000..559093e --- /dev/null +++ b/etl-task-schdeling-common/src/main/java/com/bwie/common/domain/LoadEntity.java @@ -0,0 +1,14 @@ +package com.bwie.common.domain; + +import lombok.Data; + +/** + * @author Dunzhida + * data 2023/8/4 8:16 + * fileName LoadEntity + */ +@Data +public class LoadEntity { + public Integer id; + public String name; +} diff --git a/etl-task-schdeling-common/src/main/java/com/bwie/common/domain/Mysql.java b/etl-task-schdeling-common/src/main/java/com/bwie/common/domain/Mysql.java new file mode 100644 index 0000000..cac1ba6 --- /dev/null +++ b/etl-task-schdeling-common/src/main/java/com/bwie/common/domain/Mysql.java @@ -0,0 +1,31 @@ +package com.bwie.common.domain; + +import lombok.Data; + +/** + * @author Dunzhida + * data 2023/7/30 21:19 + * fileName Mysql + */ +/* +* 定义的响应参数接受的表 +* */ +@Data +public class Mysql { + /* + * 列名 + * */ + private String COLUMNNAME; + /* + * 类型 + * */ + private String DATATYPE; + /* + * 是否为空 + * */ + private String ISNULLABLE; + /* + * 字段描述 + * */ + private String COLUMN_COMMENT; +} diff --git a/etl-task-schdeling-common/src/main/java/com/bwie/common/domain/NodeOne.java b/etl-task-schdeling-common/src/main/java/com/bwie/common/domain/NodeOne.java new file mode 100644 index 0000000..4790597 --- /dev/null +++ b/etl-task-schdeling-common/src/main/java/com/bwie/common/domain/NodeOne.java @@ -0,0 +1,40 @@ +package com.bwie.common.domain; + +import lombok.Data; + +/** + * @author Dunzhida + * data 2023/7/30 21:12 + * fileName NodeOne + */ + +/* +* 第一个 输入主表节点表 +* */ +@Data +public class NodeOne { + /* + * 主表节点主键Id + * */ + private Integer nodeOneId; + /* + * 主表数据库 + * */ + private String nodeOneDatabase; + /* + * 主表数据表 + * */ + private String nodeOneDatatable; + + /* + * 主表字段 + * */ + private String[] nodeOneFields; + private String nodeOneField; + + /* + * 主表任务Id + * */ + private Integer import1Id; + +} diff --git a/etl-task-schdeling-common/src/main/java/com/bwie/common/domain/NodeThree.java b/etl-task-schdeling-common/src/main/java/com/bwie/common/domain/NodeThree.java new file mode 100644 index 0000000..22cf90f --- /dev/null +++ b/etl-task-schdeling-common/src/main/java/com/bwie/common/domain/NodeThree.java @@ -0,0 +1,49 @@ +package com.bwie.common.domain; + +import lombok.Data; + +/** + * @author Dunzhida + * data 2023/7/30 21:14 + * fileName NodeThree + */ +/* +* 输入联查节点表 +* */ +@Data +public class NodeThree { + /* + * 联查节点主键Id + * */ + private Integer nodeThreeId; + /* + * 联查节点主表的数据库 + * */ + private String nodeOneDatatable; + /* + * 联查节点主表的字段 + * */ + private String nodeOneField; + /* + * 联查方式 + * */ + private String nodeThreeWay; + /* + * 联查节点副表的数据库 + * */ + private String nodeTwoDatatable; + /* + * 联查节点副表的字段 + * */ + private String nodeTwoField; + /* + * 联查节点的任务id + * */ + private Integer import3Id; + + private String[] nodeFieldArr; + + private String nodeFields; + + +} diff --git a/etl-task-schdeling-common/src/main/java/com/bwie/common/domain/NodeTwo.java b/etl-task-schdeling-common/src/main/java/com/bwie/common/domain/NodeTwo.java new file mode 100644 index 0000000..f0d32e0 --- /dev/null +++ b/etl-task-schdeling-common/src/main/java/com/bwie/common/domain/NodeTwo.java @@ -0,0 +1,36 @@ +package com.bwie.common.domain; + +import lombok.Data; + +/** + * @author Dunzhida + * data 2023/7/30 21:13 + * fileName NodeTwo + */ +/* +* 第二个输入副表节点表 +* */ +@Data +public class NodeTwo { + /* + * 关联表的主键Id + * */ + private Integer nodeTwoId; + /* + * 关联表的数据库 + * */ + private String nodeTwoDatabase; + /* + * 关联表的数据表 + * */ + private String nodeTwoDatatable; + /* + * 关联表的字段 + * */ + private String[] nodeTwoFields; + private String nodeTwoField; + /* + * 关联表的任务Id + * */ + private Integer import2Id; +} diff --git a/etl-task-schdeling-common/src/main/java/com/bwie/common/result/PageResult.java b/etl-task-schdeling-common/src/main/java/com/bwie/common/result/PageResult.java new file mode 100644 index 0000000..483ddde --- /dev/null +++ b/etl-task-schdeling-common/src/main/java/com/bwie/common/result/PageResult.java @@ -0,0 +1,34 @@ +package com.bwie.common.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @author dzd + * @description: 列表返回结果集 + */ +@Data +public class PageResult implements Serializable { + /** + * 总条数 + */ + private long total; + /** + * 结果集合 + */ + private List list; + public PageResult() { + } + public PageResult(long total, List list) { + this.total = total; + this.list = list; + } + public static PageResult toPageResult(long total, List list){ + return new PageResult(total , list); + } + public static Result> toResult(long total, List list){ + return Result.success(PageResult.toPageResult(total,list)); + } +} diff --git a/etl-task-schdeling-common/src/main/java/com/bwie/common/result/Result.java b/etl-task-schdeling-common/src/main/java/com/bwie/common/result/Result.java new file mode 100644 index 0000000..153ffd7 --- /dev/null +++ b/etl-task-schdeling-common/src/main/java/com/bwie/common/result/Result.java @@ -0,0 +1,76 @@ +package com.bwie.common.result; + +import com.bwie.common.constants.Constants; +import lombok.Data; + +import java.io.Serializable; + +/** + * @author Dzd + * @description: 响应信息主体 + */ +@Data +public class Result implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 成功 + */ + public static final int SUCCESS = Constants.SUCCESS; + /** + * 失败 + */ + public static final int FAIL = Constants.ERROR; + /** + * 返回状态码 + */ + private int code; + /** + * 响应信息 + */ + private String msg; + /** + * 响应数据 + */ + private T data; + + public static Result success() { + return restResult(null, SUCCESS, Constants.SUCCESS_MSG); + } + + public static Result success(T data) { + return restResult(data, SUCCESS, Constants.SUCCESS_MSG); + } + + public static Result success(T data, String msg) { + return restResult(data, SUCCESS, msg); + } + + public static Result error() { + return restResult(null, FAIL, Constants.ERROR_MSG); + } + + public static Result error(String msg) { + return restResult(null, FAIL, msg); + } + + public static Result error(T data) { + return restResult(data, FAIL, Constants.ERROR_MSG); + } + + public static Result error(T data, String msg) { + return restResult(data, FAIL, msg); + } + + public static Result error(int code, String msg) { + return restResult(null, code, msg); + } + + private static Result restResult(T data, int code, String msg) { + Result apiResult = new Result<>(); + apiResult.setCode(code); + apiResult.setData(data); + apiResult.setMsg(msg); + return apiResult; + } +} diff --git a/etl-task-schdeling-common/src/main/java/com/bwie/common/utils/JwtUtils.java b/etl-task-schdeling-common/src/main/java/com/bwie/common/utils/JwtUtils.java new file mode 100644 index 0000000..7a6ca65 --- /dev/null +++ b/etl-task-schdeling-common/src/main/java/com/bwie/common/utils/JwtUtils.java @@ -0,0 +1,109 @@ +package com.bwie.common.utils; + +import com.bwie.common.constants.JwtConstants; +import io.jsonwebtoken.Claims; +import io.jsonwebtoken.Jwts; +import io.jsonwebtoken.SignatureAlgorithm; + +import java.util.Map; + +/** + * @description: Jwt工具类 + * @author dzd + */ +public class JwtUtils { + + /** + * 秘钥 + */ + public static String secret = JwtConstants.SECRET; + + /** + * 从数据声明生成令牌 + * + * @param claims 数据声明 + * @return 令牌 + */ + public static String createToken(Map claims){ + String token = Jwts.builder().setClaims(claims).signWith(SignatureAlgorithm.HS512, secret).compact(); + return token; + } + + /** + * 从令牌中获取数据声明 + * + * @param token 令牌 + * @return 数据声明 + */ + public static Claims parseToken(String token){ + return Jwts.parser().setSigningKey(secret).parseClaimsJws(token).getBody(); + } + /** + * 根据令牌获取用户标识 + * + * @param token 令牌 + * @return 用户ID + */ + public static String getUserKey(String token){ + Claims claims = parseToken(token); + return getValue(claims, JwtConstants.USER_KEY); + } + /** + * 根据令牌获取用户标识 + * + * @param claims 身份信息 + * @return 用户ID + */ + public static String getUserKey(Claims claims){ + return getValue(claims, JwtConstants.USER_KEY); + } + /** + * 根据令牌获取用户ID + * + * @param token 令牌 + * @return 用户ID + */ + public static String getUserId(String token){ + Claims claims = parseToken(token); + return getValue(claims, JwtConstants.DETAILS_USER_ID); + } + /** + * 根据身份信息获取用户ID + * + * @param claims 身份信息 + * @return 用户ID + */ + public static String getUserId(Claims claims){ + return getValue(claims, JwtConstants.DETAILS_USER_ID); + } + /** + * 根据令牌获取用户名 + * + * @param token 令牌 + * @return 用户名 + */ + public static String getUserName(String token){ + Claims claims = parseToken(token); + return getValue(claims, JwtConstants.DETAILS_USERNAME); + } + /** + * 根据身份信息获取用户名 + * + * @param claims 身份信息 + * @return 用户名 + */ + public static String getUserName(Claims claims){ + return getValue(claims, JwtConstants.DETAILS_USERNAME); + } + /** + * 根据身份信息获取键值 + * + * @param claims 身份信息 + * @param key 键 + * @return 值 + */ + public static String getValue(Claims claims, String key){ + Object obj = claims.get(key); + return obj == null ? "" : obj.toString(); + } +} diff --git a/etl-task-schdeling-common/src/main/java/com/bwie/common/utils/StringUtils.java b/etl-task-schdeling-common/src/main/java/com/bwie/common/utils/StringUtils.java new file mode 100644 index 0000000..d9e73a4 --- /dev/null +++ b/etl-task-schdeling-common/src/main/java/com/bwie/common/utils/StringUtils.java @@ -0,0 +1,68 @@ +package com.bwie.common.utils; + +import org.springframework.util.AntPathMatcher; + +import java.util.Collection; +import java.util.List; + +/** + * @author dzd + * @description: 字符串处理工具类 + */ +public class StringUtils extends org.apache.commons.lang3.StringUtils { + + /** + * * 判断一个对象是否为空 + * + * @param object Object + * @return true:为空 false:非空 + */ + public static boolean isNull(Object object) { + return object == null; + } + + /** + * * 判断一个Collection是否为空, 包含List,Set,Queue + * + * @param coll 要判断的Collection + * @return true:为空 false:非空 + */ + public static boolean isEmpty(Collection coll) { + return isNull(coll) || coll.isEmpty(); + } + + /** + * 查找指定字符串是否匹配指定字符串列表中的任意一个字符串 + * + * @param str 指定字符串 + * @param strs 需要检查的字符串数组 + * @return 是否匹配 + */ + public static boolean matches(String str, List strs) { + if (isEmpty(str) || isEmpty(strs)) { + return false; + } + for (String pattern : strs) { + if (isMatch(pattern, str)) + { + return true; + } + } + return false; + } + + /** + * 判断url是否与规则配置: + * ? 表示单个字符; + * * 表示一层路径内的任意字符串,不可跨层级; + * ** 表示任意层路径; + * + * @param pattern 匹配规则 + * @param url 需要匹配的url + * @return + */ + public static boolean isMatch(String pattern, String url) { + AntPathMatcher matcher = new AntPathMatcher(); + return matcher.match(pattern, url); + } +} diff --git a/etl-task-schdeling-common/target/classes/com/bwie/common/constants/Constants.class b/etl-task-schdeling-common/target/classes/com/bwie/common/constants/Constants.class new file mode 100644 index 0000000..ca526b6 Binary files /dev/null and b/etl-task-schdeling-common/target/classes/com/bwie/common/constants/Constants.class differ diff --git a/etl-task-schdeling-common/target/classes/com/bwie/common/constants/JwtConstants.class b/etl-task-schdeling-common/target/classes/com/bwie/common/constants/JwtConstants.class new file mode 100644 index 0000000..452b534 Binary files /dev/null and b/etl-task-schdeling-common/target/classes/com/bwie/common/constants/JwtConstants.class differ diff --git a/etl-task-schdeling-common/target/classes/com/bwie/common/constants/TokenConstants.class b/etl-task-schdeling-common/target/classes/com/bwie/common/constants/TokenConstants.class new file mode 100644 index 0000000..684ace3 Binary files /dev/null and b/etl-task-schdeling-common/target/classes/com/bwie/common/constants/TokenConstants.class differ diff --git a/etl-task-schdeling-common/target/classes/com/bwie/common/domain/Config.class b/etl-task-schdeling-common/target/classes/com/bwie/common/domain/Config.class new file mode 100644 index 0000000..fc7a058 Binary files /dev/null and b/etl-task-schdeling-common/target/classes/com/bwie/common/domain/Config.class differ diff --git a/etl-task-schdeling-common/target/classes/com/bwie/common/domain/LoadEntity.class b/etl-task-schdeling-common/target/classes/com/bwie/common/domain/LoadEntity.class new file mode 100644 index 0000000..85d992f Binary files /dev/null and b/etl-task-schdeling-common/target/classes/com/bwie/common/domain/LoadEntity.class differ diff --git a/etl-task-schdeling-common/target/classes/com/bwie/common/domain/Mysql.class b/etl-task-schdeling-common/target/classes/com/bwie/common/domain/Mysql.class new file mode 100644 index 0000000..f04f223 Binary files /dev/null and b/etl-task-schdeling-common/target/classes/com/bwie/common/domain/Mysql.class differ diff --git a/etl-task-schdeling-common/target/classes/com/bwie/common/domain/NodeOne.class b/etl-task-schdeling-common/target/classes/com/bwie/common/domain/NodeOne.class new file mode 100644 index 0000000..a0bba15 Binary files /dev/null and b/etl-task-schdeling-common/target/classes/com/bwie/common/domain/NodeOne.class differ diff --git a/etl-task-schdeling-common/target/classes/com/bwie/common/domain/NodeThree.class b/etl-task-schdeling-common/target/classes/com/bwie/common/domain/NodeThree.class new file mode 100644 index 0000000..a8312a9 Binary files /dev/null and b/etl-task-schdeling-common/target/classes/com/bwie/common/domain/NodeThree.class differ diff --git a/etl-task-schdeling-common/target/classes/com/bwie/common/domain/NodeTwo.class b/etl-task-schdeling-common/target/classes/com/bwie/common/domain/NodeTwo.class new file mode 100644 index 0000000..70a864e Binary files /dev/null and b/etl-task-schdeling-common/target/classes/com/bwie/common/domain/NodeTwo.class differ diff --git a/etl-task-schdeling-common/target/classes/com/bwie/common/result/PageResult.class b/etl-task-schdeling-common/target/classes/com/bwie/common/result/PageResult.class new file mode 100644 index 0000000..67b2b8c Binary files /dev/null and b/etl-task-schdeling-common/target/classes/com/bwie/common/result/PageResult.class differ diff --git a/etl-task-schdeling-common/target/classes/com/bwie/common/result/Result.class b/etl-task-schdeling-common/target/classes/com/bwie/common/result/Result.class new file mode 100644 index 0000000..a8dd138 Binary files /dev/null and b/etl-task-schdeling-common/target/classes/com/bwie/common/result/Result.class differ diff --git a/etl-task-schdeling-common/target/classes/com/bwie/common/utils/JwtUtils.class b/etl-task-schdeling-common/target/classes/com/bwie/common/utils/JwtUtils.class new file mode 100644 index 0000000..1780047 Binary files /dev/null and b/etl-task-schdeling-common/target/classes/com/bwie/common/utils/JwtUtils.class differ diff --git a/etl-task-schdeling-common/target/classes/com/bwie/common/utils/StringUtils.class b/etl-task-schdeling-common/target/classes/com/bwie/common/utils/StringUtils.class new file mode 100644 index 0000000..7fca249 Binary files /dev/null and b/etl-task-schdeling-common/target/classes/com/bwie/common/utils/StringUtils.class differ diff --git a/etl-task-schdeling-common/target/etl-task-schdeling-common-3.6.3.jar b/etl-task-schdeling-common/target/etl-task-schdeling-common-3.6.3.jar new file mode 100644 index 0000000..6e7a2eb Binary files /dev/null and b/etl-task-schdeling-common/target/etl-task-schdeling-common-3.6.3.jar differ diff --git a/etl-task-schdeling-common/target/maven-archiver/pom.properties b/etl-task-schdeling-common/target/maven-archiver/pom.properties new file mode 100644 index 0000000..190ecbf --- /dev/null +++ b/etl-task-schdeling-common/target/maven-archiver/pom.properties @@ -0,0 +1,5 @@ +#Generated by Maven +#Fri Aug 04 10:38:44 CST 2023 +version=3.6.3 +groupId=com.yun +artifactId=etl-task-schdeling-common diff --git a/etl-task-schdeling-common/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/etl-task-schdeling-common/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst new file mode 100644 index 0000000..da319ea --- /dev/null +++ b/etl-task-schdeling-common/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst @@ -0,0 +1,13 @@ +com\bwie\common\result\PageResult.class +com\bwie\common\domain\NodeTwo.class +com\bwie\common\utils\JwtUtils.class +com\bwie\common\utils\StringUtils.class +com\bwie\common\constants\JwtConstants.class +com\bwie\common\domain\Mysql.class +com\bwie\common\constants\Constants.class +com\bwie\common\domain\NodeOne.class +com\bwie\common\domain\NodeThree.class +com\bwie\common\constants\TokenConstants.class +com\bwie\common\domain\Config.class +com\bwie\common\result\Result.class +com\bwie\common\domain\LoadEntity.class diff --git a/etl-task-schdeling-common/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/etl-task-schdeling-common/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst new file mode 100644 index 0000000..19da9f2 --- /dev/null +++ b/etl-task-schdeling-common/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst @@ -0,0 +1,13 @@ +D:\项目\etl-task-scheduling\etl-task-schdeling-common\src\main\java\com\bwie\common\domain\NodeTwo.java +D:\项目\etl-task-scheduling\etl-task-schdeling-common\src\main\java\com\bwie\common\utils\StringUtils.java +D:\项目\etl-task-scheduling\etl-task-schdeling-common\src\main\java\com\bwie\common\result\PageResult.java +D:\项目\etl-task-scheduling\etl-task-schdeling-common\src\main\java\com\bwie\common\constants\Constants.java +D:\项目\etl-task-scheduling\etl-task-schdeling-common\src\main\java\com\bwie\common\domain\Mysql.java +D:\项目\etl-task-scheduling\etl-task-schdeling-common\src\main\java\com\bwie\common\constants\TokenConstants.java +D:\项目\etl-task-scheduling\etl-task-schdeling-common\src\main\java\com\bwie\common\domain\Config.java +D:\项目\etl-task-scheduling\etl-task-schdeling-common\src\main\java\com\bwie\common\utils\JwtUtils.java +D:\项目\etl-task-scheduling\etl-task-schdeling-common\src\main\java\com\bwie\common\domain\NodeThree.java +D:\项目\etl-task-scheduling\etl-task-schdeling-common\src\main\java\com\bwie\common\constants\JwtConstants.java +D:\项目\etl-task-scheduling\etl-task-schdeling-common\src\main\java\com\bwie\common\result\Result.java +D:\项目\etl-task-scheduling\etl-task-schdeling-common\src\main\java\com\bwie\common\domain\LoadEntity.java +D:\项目\etl-task-scheduling\etl-task-schdeling-common\src\main\java\com\bwie\common\domain\NodeOne.java diff --git a/etl-task-schdeling-common/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst b/etl-task-schdeling-common/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst new file mode 100644 index 0000000..e69de29 diff --git a/etl-task-schdeling-remote/etl-task-schdeling-remote.iml b/etl-task-schdeling-remote/etl-task-schdeling-remote.iml new file mode 100644 index 0000000..1daccae --- /dev/null +++ b/etl-task-schdeling-remote/etl-task-schdeling-remote.iml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/etl-task-schdeling-remote/pom.xml b/etl-task-schdeling-remote/pom.xml new file mode 100644 index 0000000..cd16f4a --- /dev/null +++ b/etl-task-schdeling-remote/pom.xml @@ -0,0 +1,22 @@ + + + + etl-task-scheduling + com.yun + 3.6.3 + + 4.0.0 + + etl-task-schdeling-remote + + + + + com.yun + etl-task-schdeling-common + 3.6.3 + + + diff --git a/etl-task-schdeling-remote/target/etl-task-schdeling-remote-3.6.3.jar b/etl-task-schdeling-remote/target/etl-task-schdeling-remote-3.6.3.jar new file mode 100644 index 0000000..da4ef09 Binary files /dev/null and b/etl-task-schdeling-remote/target/etl-task-schdeling-remote-3.6.3.jar differ diff --git a/etl-task-schdeling-remote/target/maven-archiver/pom.properties b/etl-task-schdeling-remote/target/maven-archiver/pom.properties new file mode 100644 index 0000000..325567c --- /dev/null +++ b/etl-task-schdeling-remote/target/maven-archiver/pom.properties @@ -0,0 +1,5 @@ +#Generated by Maven +#Fri Aug 04 10:38:44 CST 2023 +version=3.6.3 +groupId=com.yun +artifactId=etl-task-schdeling-remote diff --git a/etl-task-schdeling-remote/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/etl-task-schdeling-remote/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst new file mode 100644 index 0000000..e69de29 diff --git a/etl-task-schdeling-remote/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst b/etl-task-schdeling-remote/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst new file mode 100644 index 0000000..e69de29 diff --git a/etl-task-schdeling-server/etl-task-schdeling-server.iml b/etl-task-schdeling-server/etl-task-schdeling-server.iml new file mode 100644 index 0000000..1daccae --- /dev/null +++ b/etl-task-schdeling-server/etl-task-schdeling-server.iml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/etl-task-schdeling-server/pom.xml b/etl-task-schdeling-server/pom.xml new file mode 100644 index 0000000..2bf96ef --- /dev/null +++ b/etl-task-schdeling-server/pom.xml @@ -0,0 +1,49 @@ + + + + etl-task-scheduling + com.yun + 3.6.3 + + 4.0.0 + + etl-task-schdeling-server + + + + + + + com.yun + etl-task-schdeling-common + 3.6.3 + + + + + com.yun + yun-common-datasource + + + + + com.yun + yun-common-datascope + + + + + com.yun + yun-common-log + + + + + com.yun + yun-common-swagger + + + + diff --git a/etl-task-schdeling-server/src/main/java/com/yun/task/Demo.java b/etl-task-schdeling-server/src/main/java/com/yun/task/Demo.java new file mode 100644 index 0000000..be2a008 --- /dev/null +++ b/etl-task-schdeling-server/src/main/java/com/yun/task/Demo.java @@ -0,0 +1,66 @@ +package com.yun.task; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.SQLException; + +/** + * @author Dunzhida + * data 2023/8/4 19:40 + * fileName Demo + */ +public class Demo { + + public static void main(String[] args) throws SQLException { + String a = "name,age,info"; + + StringBuilder sql = new StringBuilder("insert into t_info("); +// StringBuilder val = new StringBuilder("values("); + StringBuilder resultSql = null; + for (String s : a.split(",")) { +// val.append(s).append(","); + sql.append(s).append(","); + if (sql.toString().endsWith(",")){ + StringBuilder substring = new StringBuilder(sql.substring(0, sql.length() - 1)); + resultSql=substring.append(")"); + } + } +// System.out.println("value:"+val); + System.out.println("result:"+resultSql); + + + System.out.println("---------------------------------------------------------------"); +// Connection connection1 = DriverManager.getConnection("jdbc:mysql://124.221.14.100:3306/six", "root", "dzd123"); +// +// +// +// +// +// PreparedStatement preparedStatement1 = connection1.prepareStatement("insert into t_info (name) "); +// +// +// int i =0; +// for (String s : split) { +// preparedStatement1.setString(i+1,s); +// } + + String[] split = a.split(","); + + String value = "values("; + for (int j = 0; j < split.length; j++) { +// 数据加载到目标系统中 + value+=",#{}"; + } + +// String substring = value.substring(0, value.length() - 2); + +// System.out.println(substring+")"); +// +// System.out.println("result:"+resultSql+substring+")"); + String sqlsql=resultSql+value+")"; + + System.out.println(sqlsql); +// preparedStatement1.executeUpdate(); + } +} diff --git a/etl-task-schdeling-server/src/main/java/com/yun/task/Demo2.java b/etl-task-schdeling-server/src/main/java/com/yun/task/Demo2.java new file mode 100644 index 0000000..5b92ac8 --- /dev/null +++ b/etl-task-schdeling-server/src/main/java/com/yun/task/Demo2.java @@ -0,0 +1,54 @@ +package com.yun.task; + +import java.util.HashMap; +import java.util.Map; +import java.util.Random; + +/** + * @author Dunzhida + * data 2023/8/5 9:28 + * fileName Demo2 + */ +public class Demo2 { + +// 首先,定义一个包含元素和对应权重的列表。可以使用自定义的类来表示每个元素和其对应的权重值,或者使用Map来存储元素和权重的映射关系。 +// +//计算所有元素的权重总和。遍历列表或Map,将所有元素的权重值相加得到总和。 +// +//生成一个随机数,范围在0到权重总和之间。可以使用Java的Random类来生成随机数。 +// +//遍历列表或Map,累加每个元素的权重值,直到累加值大于等于随机数。选中对应的元素作为结果。 + public static void main(String[] args) { + + // 定义元素和对应的权重 + Map elements = new HashMap<>(); + elements.put("A", 8); + elements.put("B", 3); + elements.put("C", 6); + + // 计算权重总和 + + int totalWeight = elements.values().stream().mapToInt(Integer::intValue).sum(); + + // 生成随机数 + + Random random = new Random(); + int randomNumber = random.nextInt(totalWeight); + + // 遍历元素,根据权重选择 + + int cumulativeWeight = 0; + String selectedElement = null; + for (Map.Entry entry : elements.entrySet()) { + cumulativeWeight += entry.getValue(); + if (randomNumber < cumulativeWeight) { + selectedElement = entry.getKey(); + break; + } + } + + // 输出结果 + + System.out.println("Selected element: " + selectedElement); + } +} diff --git a/etl-task-schdeling-server/src/main/java/com/yun/task/MazePra.java b/etl-task-schdeling-server/src/main/java/com/yun/task/MazePra.java new file mode 100644 index 0000000..ffaeafc --- /dev/null +++ b/etl-task-schdeling-server/src/main/java/com/yun/task/MazePra.java @@ -0,0 +1,167 @@ +package com.yun.task;//package com.njupt.recurrence; + + +/** + * Creat with IntelliJ IDEA + * + * @Auther:倔强的加瓦 + * @Date:2021/07/17/15:15 + * @Description: + */ +public class MazePra { + public static void main(String[] args) { + //先创建一个二维数组来管理迷宫 + int[][] map = new int[7][8]; + int plan1 = 0; + int plan2 = 0; + for (int i = 0; i < 7; i++) { + map[i][0] = 1; + map[i][7] = 1; + } + for (int j = 0; j < 8; j++) { + map[0][j] = 1; + map[6][j] = 1; + } + map[1][6] = 1; + map[2][1] = 1; + map[2][2] = 1; + map[2][4] = 1; + map[3][2] = 1; + map[4][5] = 1; + map[4][3] = 1; + +//这里为什么要重新创建一个地图呢?为什么用int[][] map1=map,然后用map1调用第二个方法不行呢?可以帮我回答一下吗??? + int[][] map1 = new int[7][8]; + for (int i = 0; i < 7; i++) { + map1[i][0] = 1; + map1[i][7] = 1; + } + for (int j = 0; j < 8; j++) { + map1[0][j] = 1; + map1[6][j] = 1; + } + map1[1][6] = 1; + map1[2][1] = 1; + map1[2][2] = 1; + map1[2][4] = 1; + map1[3][2] = 1; + map1[4][5] = 1; + map1[4][3] = 1; + + System.out.println("=======map===="); + for (int i = 0; i < 7; i++) { + for (int j = 0; j < 8; j++) { + System.out.print(map[i][j] + " "); + } + System.out.println(" "); + } + System.out.println("=======map1===="); + for (int i = 0; i < 7; i++) { + for (int j = 0; j < 8; j++) { + System.out.print(map1[i][j] + " "); + } + System.out.println(" "); + } + + System.out.println("=====策略1,先向右,在向下====="); + judgePoint(map, 1, 1); + for (int i = 0; i < 7; i++) { + for (int j = 0; j < 8; j++) { + System.out.print(map[i][j] + " "); + if (map[i][j] == 2) { + plan1++; + } + } + System.out.println(" "); + } + + + System.out.println("=====策略2,先向下,在向右====="); + judgePoint2(map1, 1, 1); + for (int i = 0; i < 7; i++) { + for (int j = 0; j < 8; j++) { + System.out.print(map1[i][j] + " "); + if (map1[i][j] == 2) { + plan2++; + } + } + System.out.println(" "); + } + + System.out.println("策略1:先右后下的策略,共走了" + plan1 + "步"); + System.out.println("策略2:先下后右的策略,共走了" + plan2 + "步"); + if (plan1 < plan2) { + System.out.println("故策略1:先右后下的策略好,共走了" + plan1 + "步"); + } else { + System.out.println("故策略2:先下后右的策略好,共走了" + plan2 + "步"); + } + + } + + //开始写判断节点位置的状态的方法 + // 策略1,向往右,在往下,在向上,在向左 + //规定:1表示墙,2表示节点已经走过,3表示此节点不通 + public static boolean judgePoint(int[][] map, int i, int j) { + if (map[4][4] == 2) { + return true; + } else { + //最先输入的这个点假设没有走过 + if (map[i][j] == 0) { + //先把这个点假设可以走得通 + map[i][j] = 2; + //先向右走 + if (judgePoint(map, i, j + 1)) { + return true; + //向下走 + } else if (judgePoint(map, i + 1, j)) { + return true; + //如果先下走不通,则向向上走 + } else if (judgePoint(map, i - 1, j)) { + return true; + //如果向上走不通,则向左走 + } else if (judgePoint(map, i, j - 1)) { + return true; + } else { + //都走不通,则把这个点设成走不通3 + map[i][j] = 3; + return false; + } + } else { + return false; + } + } + } + + //策略2,先往下,后往右,在向上,在向左 + public static boolean judgePoint2(int[][] map, int i, int j) { + if (map[4][4] == 2) { + return true; + } else { + //最先输入的这个点假设没有走过 + if (map[i][j] == 0) { + //先把这个点假设可以走得通 + map[i][j] = 2; + //先向下走 + if (judgePoint2(map, i + 1, j)) { + return true; + //如果先下走不通,则向右走 + } else if (judgePoint2(map, i, j + 1)) { + return true; + //如果先右走不通,则向向上走 + } else if (judgePoint2(map, i - 1, j)) { + return true; + //如果向上走不通,则向左走 + } else if (judgePoint2(map, i, j - 1)) { + return true; + } else { + //都走不通,则把这个点设成走不通3 + map[i][j] = 3; + return false; + } + } else { + return false; + } + } + } +} + diff --git a/etl-task-schdeling-server/src/main/java/com/yun/task/TaskApplication.java b/etl-task-schdeling-server/src/main/java/com/yun/task/TaskApplication.java new file mode 100644 index 0000000..0465580 --- /dev/null +++ b/etl-task-schdeling-server/src/main/java/com/yun/task/TaskApplication.java @@ -0,0 +1,36 @@ +package com.yun.task; + +import com.yun.common.security.annotation.EnableCustomConfig; +import com.yun.common.security.annotation.EnableRyFeignClients; +import com.yun.common.swagger.annotation.EnableCustomSwagger2; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +/** + * @author Dunzhida + * data 2023/7/27 11:00 + * fileName TaskApplication + */ +@EnableCustomConfig +@EnableCustomSwagger2 +@EnableRyFeignClients +@SpringBootApplication +public class TaskApplication { + + public static void main(String[] args) { + + SpringApplication.run(TaskApplication.class); + + System.out.println("(♥◠‿◠)ノ゙ 数据处理层模块启动成功 ლ(´ڡ`ლ)゙ \n" + + " .-------. ____ __ \n" + + " | _ _ \\ \\ \\ / / \n" + + " | ( ' ) | \\ _. / ' \n" + + " |(_ o _) / _( )_ .' \n" + + " | (_,_).' __ ___(_ o _)' \n" + + " | |\\ \\ | || |(_,_)' \n" + + " | | \\ `' /| `-' / \n" + + " | | \\ / \\ / \n" + + " ''-' `'-' `-..-' "); + } + +} diff --git a/etl-task-schdeling-server/src/main/java/com/yun/task/controller/TaskController.java b/etl-task-schdeling-server/src/main/java/com/yun/task/controller/TaskController.java new file mode 100644 index 0000000..869ed00 --- /dev/null +++ b/etl-task-schdeling-server/src/main/java/com/yun/task/controller/TaskController.java @@ -0,0 +1,211 @@ +package com.yun.task.controller; + +import com.alibaba.fastjson.JSONObject; + + +import com.bwie.common.domain.*; +import com.bwie.common.result.Result; +import com.yun.task.service.TaskService; +import lombok.Data; +import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletRequest; +import javax.xml.soap.Node; +import java.util.List; +import java.util.Map; + +/** + * @author Dunzhida + * data 2023/7/27 16:08 + * fileName TaskController + */ +@RequestMapping("city") +@RestController +@Log4j2 +public class TaskController { + @Autowired + private TaskService taskService; + @Autowired + private HttpServletRequest request; + + /* + * 方法名: findBydatabase + * 查询所有数据库 + * 参数:无 + * 请求方法:post + * 返回结果:string的集合 + * */ + + @PostMapping("/findBydatabase") + public Result> findBydatabase(){ + log.info("功能名称,查询所有数据库,请求URI:{},请求方式:{}",request.getRequestURI(),request.getMethod()); + List list=taskService.findBydatabase(); + System.out.println(list); + Result> result=Result.success(list); + log.info("功能名称,查询所有数据库,请求URI:{},请求方式:{},响应结果:{}",request.getRequestURI(),request.getMethod(), JSONObject.toJSONString(result)); + return result; + } + + + /* + * 方法名: findByTable + * 根据数据库查询表 + * 参数: 路径传参 String database 数据库的名称 + * 请求方法:post + * 返回结果:string的集合 + * */ + + @PostMapping("/findByTable/{database}") + public Result> findByTable(@PathVariable String database){ + log.info("功能名称,根据数据库名称查询数据表,请求URI:{},请求方式:{},请求参数:{}",request.getRequestURI(),request.getMethod(),database); + List list=taskService.findByTable(database); + System.out.println(list); + Result> result=Result.success(list); + log.info("功能名称,根据数据库名称查询数据表,请求URI:{},请求方式:{},响应结果:{}",request.getRequestURI(),request.getMethod(),JSONObject.toJSONString(result)); + return result; + } + /* + * + * 方法名: findByField + * 根据表查询表字段 + * 参数: 路径传参 String database (数据库名称) + * 路径传参 String datatable (表名称) + * 请求方法:post + * 返回结果:Mysql对象list集合 + * */ + + @PostMapping("/findByField/{database}/{datatable}") + public Result> findByField(@PathVariable String datatable, @PathVariable String database){ + log.info("功能名称,根据数据表名称查询字段,请求URI:{},请求方式:{},请求参数:{}{}",request.getRequestURI(),request.getMethod(),database,datatable); + List list=taskService.findByField(datatable,database); + System.out.println(list); + Result> result=Result.success(list); + log.info("功能名称,根据数据表名称查询字段,请求URI:{},请求方式:{},响应结果:{}",request.getRequestURI(),request.getMethod(),JSONObject.toJSONString(result)); + return result; + } + /** + * 方法名: createMiddle + * 进入配置自动创建配置表 + * 参数: RequestBody Config 配置实体类 + * 请求方法:post + */ + @PostMapping("/createMiddle") + public Result createMiddle(@RequestBody Config config){ + log.info("功能名称,进入配置自动创建配置表,请求URI:{},请求方式:{},请求参数:{}",request.getRequestURI(),request.getMethod(), JSONObject.toJSONString(config)); + taskService.createMiddle(config); + System.out.println(config.getConfigId()); + Result result=Result.success(config.getConfigId()); + log.info("功能名称,进入配置自动创建配置表,请求URI:{},请求方式:{},响应结果:{}",request.getRequestURI(),request.getMethod(),JSONObject.toJSONString(result)); + return result; + } + + /* + * 方法名: addImport + * 添加第一个输入主表节点信息 + * 参数: NodeOne 对象 + * 请求方法:post + * */ + + @PostMapping("/addImport") + public Result addImport(@RequestBody NodeOne NodeOne){ + log.info("功能名称,输入表1添加,请求URI:{},请求方式:{},请求参数:{}",request.getRequestURI(),request.getMethod(),JSONObject.toJSONString(NodeOne)); + taskService.addImport(NodeOne); + Result result=Result.success(); + log.info("功能名称,输入表1添加,请求URI:{},请求方式:{},请求参数:{}",request.getRequestURI(),request.getMethod(),JSONObject.toJSONString(result)); + return result; + } + /* + * 添加第二个输入副表节点信息 + * 参数: nodeTwo 对象 + * 请求方法:post + * */ + + @PostMapping("/addImport2") + public Result addImport2(@RequestBody NodeTwo nodeTwo){ + log.info("功能名称,输入表1添加,请求URI:{},请求方式:{},请求参数:{}",request.getRequestURI(),request.getMethod(),JSONObject.toJSONString(nodeTwo)); + taskService.addImport2(nodeTwo); + Result result=Result.success(); + log.info("功能名称,输入表1添加,请求URI:{},请求方式:{},请求参数:{}",request.getRequestURI(),request.getMethod(),JSONObject.toJSONString(result)); + return result; + } + + + + + /* + * 保存配置 + * 参数: NodeTwo 对象 + * 请求方法:post + * */ + + @PostMapping("/addImport3") + public Result addImport3(@RequestBody NodeThree nodeThree){ + log.info("功能名称,输入表1添加,请求URI:{},请求方式:{},请求参数:{}",request.getRequestURI(),request.getMethod(),JSONObject.toJSONString(nodeThree)); + taskService.addImport3(nodeThree); + Result result=Result.success(); + log.info("功能名称,输入表1添加,请求URI:{},请求方式:{},请求参数:{}",request.getRequestURI(),request.getMethod(),JSONObject.toJSONString(result)); + return result; + } + + /* + * 展示所有配置列表 + * */ + @PostMapping("/taskList") + public Result> taskList(){ + log.info("功能名称,配置列表,请求URI:{},请求方式:{}",request.getRequestURI(),request.getMethod()); + List list = taskService.taskList(); + Result> success = Result.success(list); + log.info("功能名称,配置列表,请求URI:{},请求方式:{},响应参数:{}",request.getRequestURI(),request.getMethod(),JSONObject.toJSONString(success)); + return success; + } + + + /* + * 联查信息V1 + * */ + @PostMapping("/JoinList/{nodeOneDatatable}/{nodeTwoDatatable}/{nodeOneField}/{nodeTwoField}/{nodeThreeWay}") + public Result> JoinList(@PathVariable String nodeOneDatatable,@PathVariable String nodeTwoDatatable,@PathVariable String nodeOneField,@PathVariable String nodeTwoField,@PathVariable String nodeThreeWay){ + log.info("功能名称,配置列表,请求URI:{},请求方式:{}",request.getRequestURI(),request.getMethod()); + List list = taskService.JoinList(nodeOneDatatable,nodeTwoDatatable,nodeOneField,nodeTwoField,nodeThreeWay); + Result> success = Result.success(list); + log.info("功能名称,配置列表,请求URI:{},请求方式:{},响应参数:{}",request.getRequestURI(),request.getMethod(),JSONObject.toJSONString(success)); + return success; + } + + + /* + * 联查信息v2 + * */ + @PostMapping("/FileList/{nodeThreeId}") + public Result FileList(@PathVariable Integer nodeThreeId){ + log.info("功能名称,联查信息,请求URI:{},请求方式:{}",request.getRequestURI(),request.getMethod()); + NodeThree threes = taskService.FileList(nodeThreeId); + + Result result = taskService.FileLists(threes.getNodeOneDatatable(), threes.getNodeTwoDatatable(), threes.getNodeOneField(), threes.getNodeTwoField(), threes.getNodeThreeWay(),threes.getNodeFields()); + + Result success = Result.success(result); + log.info("功能名称,联查信息,请求URI:{},请求方式:{},响应参数:{}",request.getRequestURI(),request.getMethod(),JSONObject.toJSONString(success)); + return success; + } + + + + /* + * 加载信息 + * */ + @PostMapping("/loading/{nodeThreeId}") + public Result loading(@PathVariable Integer nodeThreeId ){ + log.info("功能名称,加载信息,请求URI:{},请求方式:{}",request.getRequestURI(),request.getMethod()); + Result result = taskService.loading(nodeThreeId); + Result success = Result.success(result); + log.info("功能名称,加载信息,请求URI:{},请求方式:{},响应参数:{}",request.getRequestURI(),request.getMethod(),JSONObject.toJSONString(success)); + return success; + } + + + + +} + diff --git a/etl-task-schdeling-server/src/main/java/com/yun/task/mapper/TaskMapper.java b/etl-task-schdeling-server/src/main/java/com/yun/task/mapper/TaskMapper.java new file mode 100644 index 0000000..4dfe362 --- /dev/null +++ b/etl-task-schdeling-server/src/main/java/com/yun/task/mapper/TaskMapper.java @@ -0,0 +1,42 @@ +package com.yun.task.mapper; + + +import com.bwie.common.domain.*; +import com.bwie.common.result.Result; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; +import java.util.Map; + +/** + * @author Dunzhida + * data 2023/7/27 16:15 + * fileName TaskMapper + */ +@Mapper +public interface TaskMapper { + void addImport(NodeOne nodeOne); + + void updateMiddle(Integer import1Id); + + void addImport2(NodeTwo nodeTwo); + + void updateMiddle2(Integer import2Id); + + void createMiddle(Config config); + + void addImport3(NodeThree nodeThree); + + + List taskList(); + + + NodeThree FileList(Integer nodeThreeId); + + + Integer loading(String nodeFields); + + List FileLists(String nodeOneDatatable, String nodeTwoDatatable, String nodeOneField, String nodeTwoField, String nodeThreeWay, String nodeFields); + +} diff --git a/etl-task-schdeling-server/src/main/java/com/yun/task/service/TaskService.java b/etl-task-schdeling-server/src/main/java/com/yun/task/service/TaskService.java new file mode 100644 index 0000000..a3a459a --- /dev/null +++ b/etl-task-schdeling-server/src/main/java/com/yun/task/service/TaskService.java @@ -0,0 +1,46 @@ +package com.yun.task.service; + + +import com.bwie.common.domain.*; +import com.bwie.common.result.Result; +import org.apache.ibatis.annotations.Param; + +import java.util.List; +import java.util.Map; + +/** + * @author Dunzhida + * data 2023/7/27 16:14 + * fileName TaskService + */ + +public interface TaskService { + + + List findBydatabase(); + + + List findByTable(String database); + + + List findByField(String datatable, String database); + + void addImport(NodeOne nodeOne); + + void addImport2(NodeTwo nodeTwo); + + void createMiddle(Config config); + + void addImport3(NodeThree nodeThree); + + List taskList(); + + List JoinList( String nodeOneDatatable, String nodeTwoDatatable, String nodeOneField, String nodeTwoField,String nodeThreeWay); + + + NodeThree FileList(Integer nodeThreeId); + + Result FileLists(@Param("nodeOneDatatable") String nodeOneDatatable, @Param("nodeTwoDatatable") String nodeTwoDatatable, @Param("nodeOneField") String nodeOneField, @Param("nodeTwoField") String nodeTwoField, @Param("nodeThreeWay") String nodeThreeWay,@Param("nodeFields") String nodeFields); + + Result loading(Integer nodeThreeId); +} diff --git a/etl-task-schdeling-server/src/main/java/com/yun/task/service/impl/TaskServiceImpl.java b/etl-task-schdeling-server/src/main/java/com/yun/task/service/impl/TaskServiceImpl.java new file mode 100644 index 0000000..59553b4 --- /dev/null +++ b/etl-task-schdeling-server/src/main/java/com/yun/task/service/impl/TaskServiceImpl.java @@ -0,0 +1,312 @@ +package com.yun.task.service.impl; + + +import com.alibaba.fastjson.JSONObject; +import com.bwie.common.domain.*; +import com.bwie.common.result.Result; +import com.yun.common.core.domain.R; +import com.yun.task.mapper.TaskMapper; +import com.yun.task.service.TaskService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.stereotype.Service; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import javax.xml.soap.Node; +import java.lang.reflect.Field; +import java.sql.*; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +/** + * @author Dunzhida + * data 2023/7/27 16:15 + * fileName TaskServiceImpl + */ +@Service +public class TaskServiceImpl implements TaskService { + + + @Autowired + private TaskMapper taskMapper; + +// jdbcTemplate是Spring框架中的一个核心类,用于简化在Java应用程序中执行SQL操作的过程。 +// 提供了一种方便、灵活和安全的方式来访问数据库,并处理与数据库交互相关的细节 + @Autowired + private JdbcTemplate jdbcTemplate; + + +/* +* +* +* daedadawpdjawiofhnoaffdmafmgmpmg凡是美国福克斯没干过可能凡是美国模式每个网格法兰克福哪里呢 +* +* +* */ + /* + * 查询所有数据库 + * */ + @Override + public List findBydatabase() { + String sql = "SELECT schema_name FROM information_schema.schemata"; + return jdbcTemplate.queryForList(sql,String.class); + } + + + + /* + * 根据数据库查询数据库里面的所有表 + * */ + @Override + public List findByTable(String database) { + String sql = "show tables from `"+database+"`"; + return jdbcTemplate.queryForList(sql, String.class); + } + + + /* + * 根据数据库和数据表查询表中的所有字段 + * */ + + @Override + public List findByField(String datatable, String database) { +// 选择要查询的列,包括列名、数据类型、是否可为空和列注释。 + String sql = "SELECT COLUMN_NAME, DATA_TYPE, IS_NULLABLE, COLUMN_COMMENT "+ +// 所有列的相关信息 + "FROM INFORMATION_SCHEMA.COLUMNS "+ +// 通过指定的表模式和表名来筛选出特定的表。 + "WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ?"; + + + // 来执行SQL查询并返回结果 执行的SQL语句 数据库名 表名 + List> rows = jdbcTemplate.queryForList(sql, database, datatable); + + List resultList = new ArrayList<>(); + + // 以循环的方式将查出来的字段属性存入对象中 + // 列名 字段类型 是否为null 字段描述 + for (Map row : rows) { + Mysql mysql = new Mysql(); + mysql.setCOLUMNNAME((String) row.get("COLUMN_NAME")); + mysql.setDATATYPE((String) row.get("DATA_TYPE")); + mysql.setISNULLABLE((String) row.get("IS_NULLABLE")); + mysql.setCOLUMN_COMMENT((String) row.get("COLUMN_COMMENT")); + resultList.add(mysql); + } + + return resultList; + } + + + + + + /* + * 进行添加输入主表节点 + * */ + @Override + public void addImport(NodeOne nodeOne) { + //获取输入的多个字段进行join切割 成string类型 + String firstFieldsString = String.join(",", nodeOne.getNodeOneFields()); + nodeOne.setNodeOneField(firstFieldsString); + + taskMapper.addImport(nodeOne); + + taskMapper.updateMiddle(nodeOne.getImport1Id()); + } + + + + /* + * 输入关联表节点 + * */ + @Override + public void addImport2(NodeTwo nodeTwo) { + //获取输入的多个字段进行join切割 成string类型 + String firstFieldsString = String.join(",", nodeTwo.getNodeTwoFields()); + nodeTwo.setNodeTwoField(firstFieldsString); + + taskMapper.addImport2(nodeTwo); + + taskMapper.updateMiddle2(nodeTwo.getImport2Id()); + } + + /* + * 将节点任务id 添加到配置表中 + * */ + @Override + public void createMiddle(Config config) { + taskMapper.createMiddle(config); + } + + @Override + public void addImport3(NodeThree nodeThree) { +// String join = String.join(",", nodeThree.getNodeFieldArr()); +// nodeThree.setNodeFields(join); + taskMapper.addImport3(nodeThree); + } + + @Override + public List taskList() { + List threes = taskMapper.taskList(); + return threes; + } + + @Override + public List JoinList(String nodeOneDatatable, String nodeTwoDatatable, String nodeOneField, String nodeTwoField,String nodeThreeWay) { + String substring = nodeThreeWay.substring(0 , 4); + String substring1 = nodeThreeWay.substring(4, 8); + String sql =" select * FROM "+nodeOneDatatable +" "+ substring +" "+substring1 +" "+ nodeTwoDatatable+" ON "+nodeOneDatatable+"."+nodeOneField+" = "+nodeTwoDatatable+"."+nodeTwoField; + List nodeThrees = jdbcTemplate.queryForList(sql, NodeThree.class); + return nodeThrees; + } + + @Override + public NodeThree FileList(Integer nodeThreeId) { +// 通过Id查询对象 + NodeThree nodeThree = taskMapper.FileList(nodeThreeId); + +// 获取对象内容 在进行查询返回集合 + return nodeThree; + + } + +// String substring = nodeThreeWay.substring(0 , 4); +// String substring1 = nodeThreeWay.substring(5, 9); +// String sql =" select * FROM "+nodeOneDatatable +" "+ substring +" "+substring1 +" "+ nodeTwoDatatable+" ON "+nodeOneDatatable+"."+nodeOneField+" = "+nodeTwoDatatable+"."+nodeTwoField; +//// String sql=" SELECT TABLE_NAME, COLUMN_NAME, DATA_TYPE, IS_NULLABLE, COLUMN_COMMENT FROM information_schema.COLUMNS WHERE (TABLE_NAME = '"+nodeOneDatatable+"' OR TABLE_NAME = '"+nodeTwoDatatable+"') ORDER BY TABLE_NAME, ORDINAL_POSITION;"; +// List maps = jdbcTemplate.queryForList(sql, Map.class); +// +// +//// List resultList = new ArrayList<>(); +//// for (Map row : rows) { +//// Mysql mysql = new Mysql(); +//// mysql.setCOLUMNNAME((String) row.get("COLUMN_NAME")); +//// mysql.setDATATYPE((String) row.get("DATA_TYPE")); +//// mysql.setISNULLABLE((String) row.get("IS_NULLABLE")); +//// mysql.setCOLUMN_COMMENT((String) row.get("COLUMN_COMMENT")); +//// resultList.add(mysql); +//// } +// return maps; +// + @Override + public Result FileLists(String nodeOneDatatable, String nodeTwoDatatable, String nodeOneField, String nodeTwoField, String nodeThreeWay,String nodeFields) { + + + + + String substring =null; + String substring1=null; +// 判断联查方式 + if (nodeThreeWay.equals("left join")){ + + substring = nodeThreeWay.substring(0 , 4); + substring1 = nodeThreeWay.substring(5, 9); + + }else if (nodeThreeWay.equals("right join")){ + + substring = nodeThreeWay.substring(0,5); + substring1 = nodeThreeWay.substring(6,10); + } + + +// 进行对源数据查询 +// String sql1 =" select * FROM "+nodeOneDatatable +" "+ substring +" "+substring1 +" "+ nodeTwoDatatable+" ON "+nodeOneDatatable+"."+nodeOneField+" = "+nodeTwoDatatable+"."+nodeTwoField; +// List> maps = jdbcTemplate.queryForList(sql1); +// +// List maps1 = taskMapper.FileLists(nodeOneDatatable, nodeTwoDatatable, nodeOneField, nodeTwoField, nodeThreeWay, nodeFields); +// +// StringBuilder sql = new StringBuilder("insert into t_info("); +// StringBuilder resultSql = null; +// for (String s : nodeFields.split(",")) { +// sql.append(s).append(","); +// if (sql.toString().endsWith(",")){ +// StringBuilder stringBuilder = new StringBuilder(sql.substring(0, sql.length() - 1)); +// resultSql=stringBuilder.append(")"); +// } +// } +// System.out.println("result:"+resultSql); +// System.out.println("---------------------------------------------------------------"); +// +// String[] split = nodeFields.split(","); +// String value = "values("; +// for (int j = 0; j < split.length; j++) { +// value+=",#{}"; +// } +// String sqlsql=resultSql+value+")"; +// System.out.println(sqlsql); + + + Connection connection=null; + ResultSet resultSet=null; + try { + // 连接源数据 + connection = DriverManager.getConnection("jdbc:mysql://124.221.14.100:3306/six", "root", "dzd123"); + // 进行对源数据查询 + String sql1 =" select * FROM "+nodeOneDatatable +" "+ substring +" "+substring1 +" "+ nodeTwoDatatable+" ON "+nodeOneDatatable+"."+nodeOneField+" = "+nodeTwoDatatable+"."+nodeTwoField; + PreparedStatement preparedStatement = connection.prepareStatement(sql1); + resultSet = preparedStatement.executeQuery(); + // 选取需要得字段 + + while (resultSet.next()){ + String name = resultSet.getString("name"); + int age = resultSet.getInt("age"); + String phone = resultSet.getString("phone"); + String password = resultSet.getString("password"); + String email = resultSet.getString("email"); + + // 连接目标系统 + Connection connection1 = DriverManager.getConnection("jdbc:mysql://124.221.14.100:3306/six", "root", "dzd123"); + // 数据加载到目标系统中 + PreparedStatement preparedStatement1 = connection1.prepareStatement("insert into t_info (name,age,phone,password,email) values (?,?,?,?,?)"); + preparedStatement1.setString(1,name); + preparedStatement1.setInt(2,age); + preparedStatement1.setString(3,phone); + preparedStatement1.setString(4,password); + preparedStatement1.setString(5,email); + + preparedStatement1.executeUpdate(); + preparedStatement1.close(); + connection1.close(); + } + preparedStatement.close(); + + } catch (SQLException throwables) { + throwables.printStackTrace(); + }finally { + + try { + if (resultSet!=null){ + resultSet.close(); + } + if (connection!=null){ + connection.close(); + } + + } catch (Exception exception) { + exception.printStackTrace(); + } + } + + + return Result.success("完成"); + + } + + @Override + public Result loading(Integer nodeThreeId) { +// String sql="insert into "+nodeThree.getNodeOneDatatable() +" VALUES ( "+nodeThree.getNodeOneField()+" )"; + +// String nodeFields = String.join(",", nodeThree.getNodeFieldArr()); + NodeThree nodeThree = taskMapper.FileList(nodeThreeId); + + Integer integer= taskMapper.loading(nodeThree.getNodeFields()); + + return Result.success(integer); + + } + + +} diff --git a/etl-task-schdeling-server/src/main/resources/bootstrap.yml b/etl-task-schdeling-server/src/main/resources/bootstrap.yml new file mode 100644 index 0000000..e17db9f --- /dev/null +++ b/etl-task-schdeling-server/src/main/resources/bootstrap.yml @@ -0,0 +1,25 @@ +# Tomcat +server: + port: 9636 + +# Spring +spring: + application: + # 应用名称 + name: etl-task + profiles: + # 环境配置 + active: dev + cloud: + nacos: + discovery: + # 服务注册地址 + server-addr: 10.21.21.4:8848 + config: + # 配置中心地址 + server-addr: 10.21.21.4:8848 + # 配置文件格式 + file-extension: yml + # 共享配置 + shared-configs: + - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} diff --git a/etl-task-schdeling-server/src/main/resources/mapper/TaskMapper.xml b/etl-task-schdeling-server/src/main/resources/mapper/TaskMapper.xml new file mode 100644 index 0000000..cdb0497 --- /dev/null +++ b/etl-task-schdeling-server/src/main/resources/mapper/TaskMapper.xml @@ -0,0 +1,48 @@ + + + + + + + INSERT INTO `shengshixian`.`t_node_one` ( `node_one_id`, `node_one_database`, `node_one_datatable`, `node_one_field`, `import1_id` ) +VALUES + ( 0,#{nodeOneDatabase},#{nodeOneDatatable},#{nodeOneField},#{import1Id} );; + + + + INSERT INTO `shengshixian`.`t_node_two` (`node_two_id`, `node_two_database`, `node_two_datatable`, `node_two_field`, `import2_id`) + VALUES (0,#{nodeTwoDatabase},#{nodeTwoDatatable},#{nodeTwoField},#{import2Id}); + + + + INSERT INTO `shengshixian`.`t_config` (`config_id`, `improt1_id`, `improt2_id`, `improt3_id`) + VALUES (0,0,0,0); + + + + INSERT INTO `shengshixian`.`t_node_three` (`node_three_id`, `node_one_datatable`, `node_one_field`, `node_three_way`, `node_two_datatable`, `node_two_field`, `import3_id`,`node_fields`) + VALUES (0,#{nodeOneDatatable},#{nodeOneField},#{nodeThreeWay},#{nodeTwoDatatable},#{nodeTwoField},1,#{nodeFields}); + + + INSERT INTO `six`.`t_info` (`id`, `name`) VALUES (0, #{nodeFields}); + + + + + update t_config set improt1_id=#{improt1Id} where config_id=#{import1Id} + + + update t_config set improt2_id=#{improt2Id} where config_id=#{import2Id} + + + + + + + diff --git a/etl-task-schdeling-server/target/classes/bootstrap.yml b/etl-task-schdeling-server/target/classes/bootstrap.yml new file mode 100644 index 0000000..e17db9f --- /dev/null +++ b/etl-task-schdeling-server/target/classes/bootstrap.yml @@ -0,0 +1,25 @@ +# Tomcat +server: + port: 9636 + +# Spring +spring: + application: + # 应用名称 + name: etl-task + profiles: + # 环境配置 + active: dev + cloud: + nacos: + discovery: + # 服务注册地址 + server-addr: 10.21.21.4:8848 + config: + # 配置中心地址 + server-addr: 10.21.21.4:8848 + # 配置文件格式 + file-extension: yml + # 共享配置 + shared-configs: + - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} diff --git a/etl-task-schdeling-server/target/classes/com/yun/task/Demo.class b/etl-task-schdeling-server/target/classes/com/yun/task/Demo.class new file mode 100644 index 0000000..d03ca17 Binary files /dev/null and b/etl-task-schdeling-server/target/classes/com/yun/task/Demo.class differ diff --git a/etl-task-schdeling-server/target/classes/com/yun/task/Demo2.class b/etl-task-schdeling-server/target/classes/com/yun/task/Demo2.class new file mode 100644 index 0000000..5048e6a Binary files /dev/null and b/etl-task-schdeling-server/target/classes/com/yun/task/Demo2.class differ diff --git a/etl-task-schdeling-server/target/classes/com/yun/task/MazePra.class b/etl-task-schdeling-server/target/classes/com/yun/task/MazePra.class new file mode 100644 index 0000000..40a51aa Binary files /dev/null and b/etl-task-schdeling-server/target/classes/com/yun/task/MazePra.class differ diff --git a/etl-task-schdeling-server/target/classes/com/yun/task/TaskApplication.class b/etl-task-schdeling-server/target/classes/com/yun/task/TaskApplication.class new file mode 100644 index 0000000..0c58c58 Binary files /dev/null and b/etl-task-schdeling-server/target/classes/com/yun/task/TaskApplication.class differ diff --git a/etl-task-schdeling-server/target/classes/com/yun/task/controller/TaskController.class b/etl-task-schdeling-server/target/classes/com/yun/task/controller/TaskController.class new file mode 100644 index 0000000..cc93e59 Binary files /dev/null and b/etl-task-schdeling-server/target/classes/com/yun/task/controller/TaskController.class differ diff --git a/etl-task-schdeling-server/target/classes/com/yun/task/mapper/TaskMapper.class b/etl-task-schdeling-server/target/classes/com/yun/task/mapper/TaskMapper.class new file mode 100644 index 0000000..2e04778 Binary files /dev/null and b/etl-task-schdeling-server/target/classes/com/yun/task/mapper/TaskMapper.class differ diff --git a/etl-task-schdeling-server/target/classes/com/yun/task/service/TaskService.class b/etl-task-schdeling-server/target/classes/com/yun/task/service/TaskService.class new file mode 100644 index 0000000..b830e44 Binary files /dev/null and b/etl-task-schdeling-server/target/classes/com/yun/task/service/TaskService.class differ diff --git a/etl-task-schdeling-server/target/classes/com/yun/task/service/impl/TaskServiceImpl.class b/etl-task-schdeling-server/target/classes/com/yun/task/service/impl/TaskServiceImpl.class new file mode 100644 index 0000000..8dbc41e Binary files /dev/null and b/etl-task-schdeling-server/target/classes/com/yun/task/service/impl/TaskServiceImpl.class differ diff --git a/etl-task-schdeling-server/target/classes/mapper/TaskMapper.xml b/etl-task-schdeling-server/target/classes/mapper/TaskMapper.xml new file mode 100644 index 0000000..cdb0497 --- /dev/null +++ b/etl-task-schdeling-server/target/classes/mapper/TaskMapper.xml @@ -0,0 +1,48 @@ + + + + + + + INSERT INTO `shengshixian`.`t_node_one` ( `node_one_id`, `node_one_database`, `node_one_datatable`, `node_one_field`, `import1_id` ) +VALUES + ( 0,#{nodeOneDatabase},#{nodeOneDatatable},#{nodeOneField},#{import1Id} );; + + + + INSERT INTO `shengshixian`.`t_node_two` (`node_two_id`, `node_two_database`, `node_two_datatable`, `node_two_field`, `import2_id`) + VALUES (0,#{nodeTwoDatabase},#{nodeTwoDatatable},#{nodeTwoField},#{import2Id}); + + + + INSERT INTO `shengshixian`.`t_config` (`config_id`, `improt1_id`, `improt2_id`, `improt3_id`) + VALUES (0,0,0,0); + + + + INSERT INTO `shengshixian`.`t_node_three` (`node_three_id`, `node_one_datatable`, `node_one_field`, `node_three_way`, `node_two_datatable`, `node_two_field`, `import3_id`,`node_fields`) + VALUES (0,#{nodeOneDatatable},#{nodeOneField},#{nodeThreeWay},#{nodeTwoDatatable},#{nodeTwoField},1,#{nodeFields}); + + + INSERT INTO `six`.`t_info` (`id`, `name`) VALUES (0, #{nodeFields}); + + + + + update t_config set improt1_id=#{improt1Id} where config_id=#{import1Id} + + + update t_config set improt2_id=#{improt2Id} where config_id=#{import2Id} + + + + + + + diff --git a/etl-task-schdeling-server/target/etl-task-schdeling-server-3.6.3.jar b/etl-task-schdeling-server/target/etl-task-schdeling-server-3.6.3.jar new file mode 100644 index 0000000..c3f62bf Binary files /dev/null and b/etl-task-schdeling-server/target/etl-task-schdeling-server-3.6.3.jar differ diff --git a/etl-task-schdeling-server/target/maven-archiver/pom.properties b/etl-task-schdeling-server/target/maven-archiver/pom.properties new file mode 100644 index 0000000..7e92a86 --- /dev/null +++ b/etl-task-schdeling-server/target/maven-archiver/pom.properties @@ -0,0 +1,5 @@ +#Generated by Maven +#Fri Aug 04 10:38:46 CST 2023 +version=3.6.3 +groupId=com.yun +artifactId=etl-task-schdeling-server diff --git a/etl-task-schdeling-server/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/etl-task-schdeling-server/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst new file mode 100644 index 0000000..ef1f8da --- /dev/null +++ b/etl-task-schdeling-server/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst @@ -0,0 +1,8 @@ +com\yun\task\Demo.class +com\yun\task\controller\TaskController.class +com\yun\task\MazePra.class +com\yun\task\Demo2.class +com\yun\task\mapper\TaskMapper.class +com\yun\task\service\TaskService.class +com\yun\task\service\impl\TaskServiceImpl.class +com\yun\task\TaskApplication.class diff --git a/etl-task-schdeling-server/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/etl-task-schdeling-server/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst new file mode 100644 index 0000000..8b0bccc --- /dev/null +++ b/etl-task-schdeling-server/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst @@ -0,0 +1,8 @@ +D:\项目\etl-task-scheduling\etl-task-schdeling-server\src\main\java\com\yun\task\test.java +D:\项目\etl-task-scheduling\etl-task-schdeling-server\src\main\java\com\yun\task\service\TaskService.java +D:\项目\etl-task-scheduling\etl-task-schdeling-server\src\main\java\com\yun\task\service\impl\TaskServiceImpl.java +D:\项目\etl-task-scheduling\etl-task-schdeling-server\src\main\java\com\yun\task\Demo.java +D:\项目\etl-task-scheduling\etl-task-schdeling-server\src\main\java\com\yun\task\controller\TaskController.java +D:\项目\etl-task-scheduling\etl-task-schdeling-server\src\main\java\com\yun\task\mapper\TaskMapper.java +D:\项目\etl-task-scheduling\etl-task-schdeling-server\src\main\java\com\yun\task\Demo2.java +D:\项目\etl-task-scheduling\etl-task-schdeling-server\src\main\java\com\yun\task\TaskApplication.java diff --git a/etl-task-schdeling-server/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst b/etl-task-schdeling-server/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst new file mode 100644 index 0000000..e69de29 diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..5b46774 --- /dev/null +++ b/pom.xml @@ -0,0 +1,35 @@ + + + 4.0.0 + + com.yun + yun-parent + 3.6.3 + + + + etl-task-schdeling-common + etl-task-schdeling-remote + etl-task-schdeling-server + + + etl-task-scheduling + 3.6.3 + pom + + + etl-task-scheduling任务调度 + + + + + 21-releases + 21-releases + http://10.21.21.3/repository/maven-releases/ + + + + +