Spring boot接入xxl-job

导入maven包

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

加入配置

#xxl-job部署的地址,如果是集群部署存在多个地址则用逗号分隔。
xxl.job.admin.addresses=http://172.31.128.102:8333/xxl-job-admin
#执行器通讯TOKEN(跟xxl-job服务的配置保持一致)
xxl.job.accessToken=default_token
#执行器AppName(xxl-job控制台中配置的执行器名字)
xxl.job.executor.appname=time-update-handler
#执行器注册:优先使用该配置作为注册地址,为空时使用内嵌服务 ”IP:PORT“ 作为注册地址。
xxl.job.executor.address=
#执行器IP:默认为空表示自动获取IP
xxl.job.executor.ip=
#执行器端口号:小于等于0则自动获取,默认端口为9999。(用于接收调度中心发送过来的任务调度请求,并将任务执行的结果返回给调度中心)
xxl.job.executor.port=8334
#执行器运行日志文件存储磁盘路径,为空则使用默认路径;
xxl.job.executor.logpath=
#执行器日志文件保存天数: 过期日志自动清理, 限制值大于等于3时生效;-1, 关闭自动清理功能;
xxl.job.executor.logretentiondays=15

增加配置类

@Configuration
public class XxlJobConfig {

    @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() {
        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;
    }
}

创建执行器类(写job的业务逻辑)

@Slf4j
@Component
public class TimeJob {

    /**
     * 示例
     */
    @XxlJob("timeUpdateJob")
    public void clockInJobHandler() {
        //todo 在这里写具体的业务代码
    }
}

去控制台中配置job

1.先配置执行器
在这里插入图片描述
2.再配置任务
在这里插入图片描述
3.启动job
在这里插入图片描述
到这里就完成了!

如果想在linux上安装xxl-job可以看这篇文章:点我

<think>好的,用户想了解如何将XXL-JOB集成到项目中,需要具体的接入步骤。首先,我需要回忆XXL-JOB的官方文档和之前提供的引用内容。根据引用5,源码下载地址是GitHub和Gitee,所以第一步应该下载源码或者通过Maven引入依赖。引用4提到了调度数据库的初始化,需要执行SQL脚本,这可能是在部署调度中心时的步骤。接着,引用2中的代码示例显示需要创建一个任务执行类,并使用@XxlJob注解,这可能是在业务项目中配置执行器的部分。 用户需要具体的步骤,所以应该分步骤说明。首先可能需要初始化数据库,然后部署调度中心,接着在业务项目中添加依赖,配置执行器,最后创建任务并测试。同时,引用3提到任务调度的使用场景,比如定时任务、批处理等,可能在接入时需要根据这些场景配置任务类型。 还需要注意引用1和引用2中的代码示例,特别是任务类的编写和主启动类的运行。可能需要在Spring Boot项目中配置XXL-JOB的相关属性,比如调度中心的地址。另外,调度中心的管理界面需要访问,所以需要确保项目正确部署并运行。 需要检查是否有遗漏的步骤,比如配置文件的修改、执行器的注册等。确保每一步都清晰,并且引用正确的来源。可能还需要提到调度中心的管理操作,比如添加执行器和任务配置。最后,提醒用户注意版本兼容性和常见问题,比如网络连通性、数据库配置是否正确等。</think>### XXL-JOB项目接入教程(Spring Boot集成) #### 一、环境准备 1. 下载源码(引用5): ```bash git clone https://github.com/xuxueli/xxl-job.git ``` 2. 初始化数据库(引用4、5): - 执行`/xxl-job/doc/db/tables_xxl_job.sql`脚本,创建调度数据库表 #### 二、部署调度中心 1. 配置`xxl-job-admin`模块 ```properties # application.properties spring.datasource.url=jdbc:mysql://localhost:3306/xxl_job?useUnicode=true spring.datasource.username=root spring.datasource.password=root ``` 2. 启动调度中心(引用4): - 运行`XxlJobAdminApplication`主类 - 访问`http://localhost:8080/xxl-job-admin`(默认账号admin/123456) #### 三、业务项目集成 1. 添加依赖(引用2): ```xml <dependency> <groupId>com.xuxueli</groupId> <artifactId>xxl-job-core</artifactId> <version>2.3.0</version> </dependency> ``` 2. 配置执行器 ```properties # application.properties xxl.job.admin.addresses=http://localhost:8080/xxl-job-admin xxl.job.executor.appname=xxl-job-executor-sample xxl.job.executor.port=9999 ``` 3. 编写任务处理器(引用2): ```java @Component public class DemoJobHandler { @XxlJob("demoJobHandler") public void execute() { System.out.println("XXL-JOB任务执行成功"); } } ``` #### 四、任务配置 1. 在调度中心管理界面: - 新建执行器(AppName需与配置匹配) - 创建任务:设置Cron表达式和JobHandler名称(需与注解值一致) #### 五、验证流程 1. 启动业务项目 2. 在调度中心触发任务执行 3. 查看控制台输出和执行日志
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值