springboot 整合xxl-job

springboot 整合xxl-job

1.下载xxl-job 安装包
2.执行对应的xxl-job脚本
3.修改xxl-job 的配置文件 如下图:
springboot 整合xxl-job_第1张图片
4.启动xxl-job

5.创建对应的springboot项目

6.引入xxl-job 注意:要注意对应的xxl-job版本springboot 整合xxl-job_第2张图片
7.修改项目中配置文件
#----------xxl-job配置--------------
xxl:
job:
admin:
addresses: http://localhost:9098/xxl-job-admin #xxljob调度中心部署 例如:http://127.0.0.1:8080/xxl-job-admin
executor:
appname: test-job #xxljob配置的执行器名称,
ip: #执行器IP,默认为空表示自动获取IP
port: 9999 #xxljob配置的端口号,默认为9999
logpath: /data/xxl-job/jobhandler #执行器运行日志文件存储磁盘路径
logretentiondays: -1 #调度中心日志表数据保存天数,过期日志自动清理;限制大于等于7时生效,否则, 如-1,关闭自动清理功能
accessToken: #调度中心通讯TOKEN [选填]:非空时启用

8.添加xxl-job配置类
package com.example.producer.config;

/**

  • 会话记录 前端控制器
  • @author wangli
  • @since 2021-12-13
    */
    import com.xxl.job.core.executor.impl.XxlJobSpringExecutor;
    import lombok.extern.slf4j.Slf4j;
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.ComponentScan;
    import org.springframework.context.annotation.Configuration;

/**

  • xxl-job config

  • @author xuxueli 2017-04-28
    */
    @Configuration
    @ComponentScan(basePackages = “com.example.producer.job”)//配置需要扫描的job类
    @Slf4j
    public class XxlJobConfig {
    private final Logger logger = LoggerFactory.getLogger(XxlJobConfig.class);

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

    @Value(“${xxl.job.executor.appname}”)
    private String appName;

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

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

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

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

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

    @Bean(initMethod = “start”, destroyMethod = “destroy”)
    public XxlJobSpringExecutor xxlJobExecutor() {
    logger.info(“>>>>>>>>>>> xxl-job config init.”);
    XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor();
    xxlJobSpringExecutor.setAdminAddresses(adminAddresses);
    xxlJobSpringExecutor.setAppname(appName);
    xxlJobSpringExecutor.setIp(ip);
    xxlJobSpringExecutor.setPort(port);
    xxlJobSpringExecutor.setAccessToken(accessToken);
    xxlJobSpringExecutor.setLogPath(logPath);
    xxlJobSpringExecutor.setLogRetentionDays(logRetentionDays);

     return xxlJobSpringExecutor;
    

    }

}

9.写测试job类
springboot 整合xxl-job_第3张图片
10.登录xxl-job 配置对应的执行器 注意:执行器地址为:ip+项目配置文件中的xxl.job.admin.executor.ip
springboot 整合xxl-job_第4张图片

11.添加任务管理器
springboot 整合xxl-job_第5张图片
其中jobHandler为测试代码中xxl-job注解中的值
springboot 整合xxl-job_第6张图片

你可能感兴趣的:(java,spring,boot,java,spring)