文章目录
- 一、xxl-job任务调度中心
- 1. 调度中心创建任务
- 2. 调度中心创建执行器
- 二、执行器任务编码
- 2.1. 单参数
- 2.2. 多参数
- 三、调度中心参数传递测试
- 3.1. 单个参数传递
- 3.2. 多个参数传递
前提:执行器和xxl-job任务调度中心启动完毕
一、xxl-job任务调度中心
1. 调度中心创建任务
2. 调度中心创建执行器
注:一定要和执行器ip对上,外网ip不可以
二、执行器任务编码
2.1. 单参数
package com.gblfy.distributedjob.task;import com.xxl.job.core.context.XxlJobHelper;
import com.xxl.job.core.handler.annotation.XxlJob;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;@Component
public class TaskExecute {private final static Logger logger = LoggerFactory.getLogger(TaskExecute.class);/*** 任务调度入口** <p>* 参数1: 执行日期 executeDate 2021-02-15* 参数2: 执行标识 executeFlag I-增量 F-全量* 参数3: 表名称 tableName sys_user* 参数4: 管理机构 manageCom 86* 参数5: 执行场景 executeScene UPDATE* </p>*/@XxlJob("myJobHandler")public void execute() {// 获取参数String param = XxlJobHelper.getJobParam();logger.info("接收調度中心参数...[{}]",param);//控制台输出日志logger.info("myXxlJobHandler execute...");try {//书写业务逻辑//TODO//写日志到调度中心日志中XxlJobHelper.log("myXxlJobHandler execute Success...");// 设置任务结果XxlJobHelper.handleSuccess();} catch (Exception e) {logger.error("myXxlJobHandler execute Fail ...", e);//写日志到调度中心日志中XxlJobHelper.log("myXxlJobHandler execute Fail...");// 设置任务结果XxlJobHelper.handleFail();}}
}
2.2. 多参数
package com.gblfy.distributedjob.task;import com.xxl.job.core.context.XxlJobHelper;
import com.xxl.job.core.handler.annotation.XxlJob;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;@Component
public class TaskExecute {private final static Logger logger = LoggerFactory.getLogger(TaskExecute.class);/*** 任务调度入口** <p>* 参数1: 执行日期 executeDate 2021-02-15* 参数2: 执行标识 executeFlag I-增量 F-全量* 参数3: 表名称 tableName sys_user* 参数4: 管理机构 manageCom 86* 参数5: 执行场景 executeScene UPDATE* </p>*/@XxlJob("myJobHandler")public void execute() {// 获取参数String param = XxlJobHelper.getJobParam();String[] methodParams = param.split(",");logger.info("执行日期...[{}]", methodParams[0]);logger.info("执行标识...[{}]", methodParams[1]);logger.info("表名称 ...[{}]", methodParams[2]);logger.info("管理机构...[{}]", methodParams[3]);logger.info("执行场景...[{}]", methodParams[4]);//控制台输出日志logger.info("myXxlJobHandler execute...");try {//书写业务逻辑//TODO//写日志到调度中心日志中XxlJobHelper.log("myXxlJobHandler execute Success...");// 设置任务结果XxlJobHelper.handleSuccess();} catch (Exception e) {logger.error("myXxlJobHandler execute Fail ...", e);//写日志到调度中心日志中XxlJobHelper.log("myXxlJobHandler execute Fail...");// 设置任务结果XxlJobHelper.handleFail();}}
}
三、调度中心参数传递测试
3.1. 单个参数传递
3.2. 多个参数传递
用,分割
2021-02-15,I,sys_user,86,UPDATE