前段时间老板叫用springboot整合xxl-job,以下是本人的一些整合步骤,一字一码打出来,希望对你有用,谢谢你们的阅读。

本例子以若依框架为基础(若依有自带定时任务),本例子只是为了学习

若依:
https://gitee.com/y_project/RuoYi-fast

XXL-JOB:https://www.xuxueli.com/xxl-job/

首先把若依项目启动运行:
在这里插入图片描述
第二步:获取xxl源码:
https://gitee.com/xuxueli0323/xxl-job

然后使用idea打开xxl-job-admin,配置数据库

然后启动访问:
http://127.0.0.1:8080/xxl-job-admin/toLogin
在这里插入图片描述
默认账号:admin 默认密码:123456

登录成功后界面:
在这里插入图片描述
第三步:往若依项目的pom.xml加入

<dependency>
    <groupId>com.xuxueli</groupId>
    <artifactId>xxl-job-core</artifactId>
    <version>2.3.0</version>
</dependency>

第四步:往若依项目application.yml加上

xxl:
  job:
    admin:
      addresses: http://127.0.0.1:8080/xxl-job-admin
    executor:
      appname: xxl-job-executor-sample # 执行器AppName [选填]:执行器心跳注册分组依据;为空则关闭自动注册
      address:
      ip:
      port: 9999
      logpath: G:/
      logretentiondays: -1
    accessToken: ### 执行器通讯TOKEN [选填]:非空时启用;

然后新建一个class(XxlJobConfig)

@Configuration
public class XxlJobConfig {
    private Logger logger = LoggerFactory.getLogger(XxlJobConfig.class);

    @Value("${xxl.job.admin.addresses}")
    private String adminAddresses;

    @Value("${xxl.job.accessToken}")
    private String accessToken;

    @Value("${xxl.job.executor.appname}")
    private String appname;

    @Value("${xxl.job.executor.address}")
    private String address;

    @Value("${xxl.job.executor.ip}")
    private String ip;

    @Value("${xxl.job.executor.port}")
    private int port;

    @Value("${xxl.job.executor.logpath}")
    private String logPath;

    @Value("${xxl.job.executor.logretentiondays}")
    private int logRetentionDays;

    @Bean
    public XxlJobSpringExecutor xxlJobExecutor() {
        logger.info(">>>>>>>>>>> xxl-job config init.");
        XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor();
        xxlJobSpringExecutor.setAdminAddresses(adminAddresses);
        xxlJobSpringExecutor.setAppname(appname);
        xxlJobSpringExecutor.setAddress(address);
        xxlJobSpringExecutor.setIp(ip);
        xxlJobSpringExecutor.setPort(port);
        xxlJobSpringExecutor.setAccessToken(accessToken);
        xxlJobSpringExecutor.setLogPath(logPath);
        xxlJobSpringExecutor.setLogRetentionDays(logRetentionDays);

        return xxlJobSpringExecutor;
    }

}

然后启动若依项目,再次到调度中心查看执行器:
在这里插入图片描述
发现注册成功,则说明整合成功

第五步:往若依项目新增一个任务处理Class,内容如下

@Component
public class TestJob {
    @XxlJob("testHandler")
    public void testHandler() throws Exception {
        System.out.println("我执行了------------");
    }
}

第六步:配置任务管理
在这里插入图片描述
第七步:执行查看
在这里插入图片描述
发现可以成功执行若依里面的执行器说明整合成功

ps:整合不易,希望收藏,或许以后对你有用呢

Logo

快速构建 Web 应用程序

更多推荐