新版的任务核心类 “IJobHandler” 的 “execute” 方法取消出入参设计。改为通过 “XxlJobHelper.getJobParam” 获取任务参数并替代方法入参,通过 “XxlJobHelper.handleSuccess/handleFail” 设置任务结果并替代方法出参,示例代码如下;
/**
* <p>
* Description: JobTest
* </p>
*
* @author songzixian
* @version v1.0.0
* @create 2020-11-16 14:16
* @see com.xxl.job.executor.service.jobhandler
*/
@Component
public class TestJob {
private Logger logger = LoggerFactory.getLogger(TestJob.class);
@XxlJob("blogJob")
public void blogJob(){
logger.info("执行器进入逻辑处理");
//获取页面传递的参数
String param = XxlJobHelper.getJobParam();
/**
* 日志日志返回 begin
*/
//错误时调用,返回状态码
XxlJobHelper.handleFail();
//错误时调用,返回状态码+自定义日志
XxlJobHelper.handleFail("执行失败的自定义日志.....");
XxlJobHelper.handleTimeout();
XxlJobHelper.handleTimeout("执行超时的自定义日志....");
//成功时调用,返回状态码
XxlJobHelper.handleSuccess();
//成功时调用,返回状态码+自定义日志
XxlJobHelper.handleSuccess("执行成功日志...");
/**
* 日志日志返回 end
*/
}
}
简单的使用案例,当条件成立的时候,需要返回日志,需要return;
结束掉该方法日志才会生效,例如
@XxlJob("blogJob")
public void blogJob(){
logger.info("执行器进入逻辑处理");
//获取页面传递的参数
String param = XxlJobHelper.getJobParam();
int a = 10;
if (a > 5){
//处理逻辑
}else {
//错误时调用,返回状态码+自定义日志
XxlJobHelper.handleFail("执行失败的自定义日志.....");
//使用return;强制结束job
return;
}
//成功时调用,返回状态码+自定义日志
XxlJobHelper.handleSuccess("执行成功日志...");
}