DataX-Web 源码调试及打包

news2024/12/25 12:34:33

文章目录

        • 1、还原 dataxweb 数据库
        • 2、修改配置文件
        • 3、打包

前文回顾:
《DataX 及 DataX-Web 安装使用详解》
《DataX 源码调试及打包》

源码地址:https://github.com/WeiYe-Jing/datax-web


1、还原 dataxweb 数据库

sql 脚本在目录 /bin/db/datax-web.sql

在这里插入图片描述


2、修改配置文件

打开项目后,如下

在这里插入图片描述

我们需要修改控制器datax-admin和执行器datax-executor的配置文件。

  • datax-admin

修改控制器配置文件application.yml

# 控制器端口号
server:
  port: 8099
spring:
  #数据源,目前只支持mysql
  datasource:
    username: root
    password: 666888
    url: jdbc:mysql://localhost:3306/dataxweb?serverTimezone=Asia/Shanghai&useLegacyDatetimeCode=false&useSSL=false&nullNamePatternMatchesAll=true&useUnicode=true&characterEncoding=UTF-8
    driver-class-name: com.mysql.jdbc.Driver

    # 数据库连接池配置
    hikari:
      ## 最小空闲连接数量
      minimum-idle: 5
      ## 空闲连接存活最大时间,默认600000(10分钟)
      idle-timeout: 180000
      ## 连接池最大连接数,默认是10
      maximum-pool-size: 10
      ## 数据库连接超时时间,默认30秒,即30000
      connection-timeout: 30000
      connection-test-query: SELECT 1
      ##此属性控制池中连接的最长生命周期,值0表示无限生命周期,默认1800000即30分钟
      max-lifetime: 1800000

  # datax-web email,不需要可以不配置
  mail:
    host: smtp.qq.com
    port: 25
    username:
    password:
    properties:
      mail:
        smtp:
          auth: true
          starttls:
            enable: true
            required: true
        socketFactory:
          class: javax.net.ssl.SSLSocketFactory


management:
  health:
    mail:
      enabled: false
  server:
    servlet:
      context-path: /actuator

mybatis-plus:
  # mapper.xml文件扫描
  mapper-locations: classpath*:/mybatis-mapper/*Mapper.xml
  # 实体扫描,多个package用逗号或者分号分隔
  #typeAliasesPackage: com.yibo.essyncclient.*.entity
  global-config:
    # 数据库相关配置
    db-config:
      # 主键类型  AUTO:"数据库ID自增", INPUT:"用户输入ID", ID_WORKER:"全局唯一ID (数字类型唯一ID)", UUID:"全局唯一ID UUID";
      id-type: AUTO
      # 字段策略 IGNORED:"忽略判断",NOT_NULL:"非 NULL 判断"),NOT_EMPTY:"非空判断"
      field-strategy: NOT_NULL
      # 驼峰下划线转换
      column-underline: true
      # 逻辑删除
      logic-delete-value: 0
      logic-not-delete-value: 1
      # 数据库类型
      db-type: mysql
    banner: false
  # mybatis原生配置
  configuration:
    map-underscore-to-camel-case: true
    cache-enabled: false
    call-setters-on-nulls: true
    jdbc-type-for-null: 'null'
    type-handlers-package: com.wugui.datax.admin.core.handler

# 配置mybatis-plus打印sql日志
logging:
  level:
    com.wugui.datax.admin.mapper: error
    path: ./data/applogs/admin


#datax-job, access token
datax:
  job:
    accessToken:
    #i18n (default empty as chinese, "en" as english)
    i18n:
    ## triggerpool max size
    triggerpool:
      fast:
        max: 200
      slow:
        max: 100
      ### log retention days
    logretentiondays: 30

datasource:
  aes:
    key: AD42F6697B035B75

我这修改了数据源、端口以及sql日志的配置。


  • datax-executor

修改执行器配置文件application.yml

# web port
server:
  port: 8082

# log config
logging:
  config: classpath:logback.xml
  # 日志路径
  path: ./data/applogs/executor/jobhandler

datax:
  job:
    admin:
      ### datax admin address list, such as "http://address" or "http://address01,http://address02"
      # 控制器的地址及端口
      addresses: http://127.0.0.1:8099
    executor:
      appname: datax-executor
      ip:
      port: 9999 # 执行器端口号
      ### job文件的执行日志路径
      logpath: ./data/applogs/executor/jobhandler
      ### job log retention days
      logretentiondays: 30
    ### job, access token
    accessToken:

  executor:
    # datax json文件存放位置
    jsonpath: F:/IdeaProjectsWC/DataX/target/datax/datax/script

  # Datax执行文件datax.py的地址
  pypath: F:/IdeaProjectsWC/DataX/target/datax/datax/bin/datax.py

根据实际情况修改控制器的地址、执行器端口号、json文件存放位置和执行文件datax.py的地址。


3、打包

点击 datax-web 中的clean,等待执行完成后,点击 package 进行打包。

运行 datax-admin 下的 target/datax-admin-2.1.2.jar,以及 datax-executor 下的 target/datax-executor-2.1.2.jar。

不出意外的话会报如下错误

在这里插入图片描述

我们打开jar包BOOT-INF\classes目录,可以看到少了一些配置文件,并且mybatis-mapper、i18n里是空的

在这里插入图片描述

idea打开,把target/classes下的yml、xml、properties文件以及mybatis-mapper、i18n复制进来

在这里插入图片描述

注:这些资源文件打包没打进来可以去pom文件修改配置,我这里就简单粗暴copy进来,同时我的yml文件为了方便上线,所以用了好几个。

再次运行,即可

在这里插入图片描述

同理,执行器的yml和xml文件也复制到 datax-executor-2.1.2.jar 里的 BOOT-INF\classes 里

在这里插入图片描述

再次运行,即可

在这里插入图片描述

运行成功后,即可访问 http://127.0.0.1:8099/index.html,如下

在这里插入图片描述

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qtF91r2b-1670492261749)(.\程序员大佬超.assets\image-20221124174629076.png)]



更多技术干货,请持续关注程序员大佬超。
原创不易,转载请注明出处。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/75931.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Keycloak之17.0.1 版本与Jenkins安装与集成-yellowcong

jekins和keycloak的认证,是依赖于 Keycloak Authentication Plugin 插件,进行认证处理,这个配置还是相对比较简单的,最坑的一点就是如果配置错误了,如何恢复的问题。 keycloak 应用集成 Keycloak之安装与启动-yellowcong Keycloak之功能介绍与简单使用-yellowcong Keyc…

BW取月底月初日期函数

BW取月底内置的函数与SAP有差异,为 SN_LAST_DAY_OF_MONTH,如下 很简单的逻辑,主要通过2月的日期进行判断为平年还是闰年,其他月末日期固定 取月底函数: call function SN_LAST_DAY_OF_MONTH EXPORTING DAY_IN …

如何下载不同格式的卫星地图

如何下载不同格式的卫星地图 发布时间:2018-01-17 版权: 务名称:下载任务的名称,可重命名 经纬度范围当前下载区域所在的经纬度范围,不可更改 保存路径:下载你选择区域的文件保存的地方,可更…

基于jsp+mysql+ssm在线培训教育平台-计算机毕业设计

项目介绍 本在线培训教育课程平台系统主要包括系统用户管理模块、课程类别管理模块、课程信息管理、站内新闻管理、登录模块、和退出模块等多个模块。它帮助在线教育平台实现了信息化、网络化,通过测试,实现了系统设计目标,系统采用了jsp的mvc框架,SSM(…

Allegro如何检查过孔类型是否使用正确操作指导

Allegro如何检查过孔类型是否使用正确操作指导 Allegro可以检查PCB上过孔类型是否使用正确,让使用错误的过孔以DRC的形式报出来,具体操作如下 选择setup-Constraint-modes 出现Analysis mode的窗口,选择Physical Modes,Vialist DRC选择on开关,并且保证On-line DRC是勾选…

【数据结构】堆的实现(向上、下调整比较,复杂度,堆排序,Top-K问题)

文章目录一、堆的实现1、堆的概念2、堆的性质3、堆的实现堆的创建(向上、下调整比较)堆排序Top-K(读取文件当中的数据)一、堆的实现 1、堆的概念 如果有一个关键码的集合K {k0,k1, k2,…&…

餐饮行业的成本率与毛利率

1、成本率与毛利率 成本率是指成本量与营业额(销售额)之间的比率,表示实现一定量的销售额需要多少比例的成本资源消耗。 成本率越低,表示企业实现单位业绩付出的资源代价越小,释放出的收益空间越大;相反&a…

docker安装nginx以及(nginxWebUI和nginx-gui图形化界面的使用)

一、docker安装nginx 1、拉取镜像 docker pull nginx2、创建挂载目录 mkdir -vp /usr/local/docker/nginx cd /usr/local/docker/nginx #创建用户挂在的目录 mkdir -vp logs html conf3、启动镜像 1、方式一(推荐) 1、启动 docker run -d --name nginx -p 80:80 nginx2、…

vue实现企业微信扫码登录后台管理系统

大致流程 在登录页面构建内嵌式登录二维码(这种方式好处:无需跳转到企业微信域下登录后再返回,提升企业微信登录的流畅性与成功率)扫二维码之后,微信那边会跳转到redirect_uri你重定向的地址,后面会拼接co…

医疗器械网络安全漏洞自评报告模板

提示:编制医疗器械网络安全漏洞自评报告要点解析 文章目录1. 目的2. 引用文件3. CVSS漏洞等级3.1 概述3.1.1 适用范围说明3.1.2 CNNVD-ID定义3.1.3 编码原则3.1.4 CNNVD-ID语法介绍3.2 指标分析3.2.1 基本指标3.2.1.1可用性指标1)攻击向量2)攻击复杂性3)所需权限4)用…

二、基础平滑、面积折线图与折线堆叠、面积堆叠《手把手教你 ECharts 数据可视化详解》

注:本系列教程需要对应 JavaScript 、html、css 基础,否则将会导致阅读时困难,本教程将会从 ECharts 的官方示例出发,详解每一个示例实现,从中学习 ECharts 。 ECharts 官方示例:https://echarts.apache.o…

蚁剑v4.0流量分析

​ 目录 0x01声明: 0x02简介: 0x03环境搭建: 下载: 初始化项目: 0x04流量分析: 解密: 0x05总结: 0x01声明: 仅供学习参考使用,请勿用作违法用途&…

2023年天津天狮学院专升本专业课如何线上考试考前准备的要求

天津天狮学院2023年高职升本科专业课线上考试要求根据目前疫情防控形势,为保障广大考生身体健康及安全,我校 2023 年高职升本科专业课考试拟采取在线考试形式。为保证此次考试顺利进行,特对报考我校专业课考生提出以下参加考试要求&#xff0…

Ansible自动化运维工具之playbook剧本编写

一.playbook的相关知识 1.1 playbook 的简介 playbook是 一个不同于使用Ansible命令行执行方式的模式,其功能更强大灵活。简单来说,playbook是一个非常简单的配置管理和多主机部署系统,不同于任何已经存在的模式,可作为一个适合…

【MAUI】为 Label、Image 等控件添加点击事件

一、前言 已经习惯了 WPF、WinForm 中“万物皆可点击”的方式。 但是在 MAUI 中却不行了。 在 MAUI 中,点击、双击的效果,是需要通过“手势识别器”来实现。 本篇文章,我们就通过“手势识别器”来为 Label、Image等控件实现点击事件。 相信…

若依微服务版登录流程源码分析1

若依微服务版登录流程涉及到很多模块,本章先从网关讲起 验证码 验证码配置 先来看配置中心的网关配置文件ruoyi-gateway-dev.yml,其中有这么一段 # 安全配置 security:# 验证码captcha:enabled: truetype: math这段配置什么作用呢,就是将…

牛客网刷题【BC7、BC8、BC9、 BC10、 BC11、 BC12】

目录 一 、BC12 字符圣诞树 二、BC7 缩短二进制 三、BC8 十六进制转十进制 四、BC9 printf的返回值 五、BC10 成绩输入输出 六、BC11 学生基本信息输入输出 一 、BC12 字符圣诞树 #include <stdio.h>int main() {char val0;//读入字符scanf("%c",&…

Git入门与进阶 - 总览

Git入门与进阶教程 欢迎加好友一起讨论问题 知识地图&#xff1a;入门Git简介https://blog.csdn.net/lili40342/article/details/128241047Git安装与配置https://blog.csdn.net/lili40342/article/details/128241144Git工作流程https://blog.csdn.net/lili40342/article/detail…

[附源码]计算机毕业设计的个人理财系统Springboot程序

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

成功解决TypeError: cli.init is not a function for react native

用苹果电脑&#xff08;MacBook air 或者 M1&#xff09;运行 npx react-native init appName时候报错&#xff0c;如下图所示&#xff1a; TypeError: cli.init is not a function at run (/opt/homebrew/lib/node_modules/react-native-cli/index.js:302:7) at createProjec…