新版的任务核心类 “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
         */
    }
}

微信截图_20210621160727.png
简单的使用案例,当条件成立的时候,需要返回日志,需要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("执行成功日志...");
    }

微信截图_20210621162531.png

Last modification:June 21st, 2021 at 04:27 pm
如果觉得这篇技术文章对你有用,请随意赞赏