XXL-JOB初探
- 安装xxl-job
- 调用定时任务
安装xxl-job
采用
docker方法的进行安装,需要依赖mysql数据版本信息:
mysql5.7.27
xxl-job2.2.0
安装mysql
- 下载镜像 - 1 - docker pull mysql:5.7.27
- 创建启动 - docker容器,需要指定- ip,不然- xxl-job无法连接- 1 
 2
 3- # 创建lan名称的网络,不然无法指定ip
 docker network create --driver nat --subnet=172.29.212.0/23 lan
 docker run --name mysql -e MYSQL_ROOT_PASSWORD=password@227 --net lan -d mysql:5.7.27
安装xxl-job
- 下载镜像 - 1 - docker pull xuxueli/xxl-job-admin:2.2.0
- 创建启动 - docker容器- 1 - docker run --net lan -e PARAMS="--spring.datasource.url=jdbc:mysql://mysql:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai --spring.datasource.username=root --spring.datasource.password=password@227" -p 8080:8080 --name xxl-job-admin -d xuxueli/xxl-job-admin:2.2.0
- 访问地址:http://127.0.0.1:8080/xxl-job-admin/,用户名/密码:admin/123456 
调用定时任务
- 创建 - Spring Boot项目,直接创建
- 在启动类中添加 - XxlJobSpringExecutor- 1 
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12- @Bean
 public XxlJobSpringExecutor xxlJobExecutor() {
 log.info(">>>>>>>>>>> xxl-job config init.");
 XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor();
 // xxl-job的地址
 xxlJobSpringExecutor.setAdminAddresses("http://127.0.0.1:8080/xxl-job-admin");
 // xxl-job的应用名称
 xxlJobSpringExecutor.setAppname("xxl-job-executor-sample");
 // xxl-job的端口
 xxlJobSpringExecutor.setPort(9999);
 return xxlJobSpringExecutor;
 }
- 在启动类中添加任务的执行方法 - 1 
 2
 3
 4
 5
 6- @XxlJob("demoJobHandler")
 public ReturnT<String> execute(String param){
 log.info("调用成功");
 XxlJobLogger.log("调用成功");
 return ReturnT.SUCCESS;
 }
XXL-JOB初探
      http://example.com/2020/04/22/CronJob/XXL-JOB初探/