目录
- 一,下载
- 1.1 官方文档地址
- 1.2 源码仓库地址
- 二, 配置部署 "调度中心"
- 2.1 初始化 "调度数据库"
- 2.2 修改配置文件
- 2.3 启动调度中心
- 三,springboot项目整合
- 3.1 添加依赖
- 3.2 修改配置文件
- 3.3 执行器组件配置
- 4.4 编写测试任务
- 四,测试调度中心执行任务
- 4.1 新建执行器
- 4.2 新建任务
- 4.3 测试
- 4.4 调度日志查看
一,下载
1.1 官方文档地址
文档地址:https://www.xuxueli.com/xxl-job/
1.2 源码仓库地址
github地址
gitee地址
将代码下载使用开发工具打开
xxl-job-admin:调度中心
xxl-job-core:公共依赖
xxl-job-executor-samples:执行器Sample示例
:xxl-job-executor-sample-springboot:Springboot版本,通过Springboot管理执行器,推荐这种方式;
:xxl-job-executor-sample-frameless:无框架版本;
二, 配置部署 “调度中心”
2.1 初始化 “调度数据库”
数据脚本在源码:doc/db/tables_xxl_job.sql
2.2 修改配置文件
修改xxl-job-admin 调度中心模块下的application.properties配置文件,主要是修改数据链接,用户名,密码等信息为我们自己的数据地址,也就是2.1步骤执行的脚本数据库地址
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
2.3 启动调度中心
访问地址:http://localhost:8080/xxl-job-admin
默认登录账号 “admin/123456”, 登录后运行界面如下图所示
三,springboot项目整合
参考源码中的案例,或者直接使用源码中的案例进行学习都可以
3.1 添加依赖
<dependency>
<groupId>com.xuxueli</groupId>
<artifactId>xxl-job-core</artifactId>
<version>2.3.1</version>
</dependency>
3.2 修改配置文件
server.port=8081
logging.config=classpath:logback.xml
#调度中心部署根地址
xxl.job.admin.addresses=http://127.0.0.1:8080/xxl-job-admin
#执行器通讯TOKEN,和调度中心配置相同
xxl.job.accessToken=default_token
#执行器AppName,任务调度中心管理界面新增执行器需要该值
xxl.job.executor.appname=xxl-job-test
xxl.job.executor.address=
xxl.job.executor.ip=
xxl.job.executor.port=9999
xxl.job.executor.logpath=/data/applogs/xxl-job/jobhandler
xxl.job.executor.logretentiondays=30
3.3 执行器组件配置
@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;
}
}
4.4 编写测试任务
@Component
public class JobHandler {
//@XxlJob(value="自定义jobhandler名称", init = "JobHandler初始化方法", destroy = "JobHandler销毁方法")"
// 注解value值对应的是调度中心新建任务的JobHandler属性的值
@XxlJob(value = "testJobHandler")
public void demoJobHandler(){
System.out.println("testJobHandler执行了");
}
}
四,测试调度中心执行任务
4.1 新建执行器
- 执行器管理–>新增
AppName是执行器配置文件中的xxl.job.executor.appname=xxl-job-test的名称
4.2 新建任务
- 任务管理–>新增
4.3 测试
如果启动就会按照Cron表达定期执行,执行一次顾名思义执行一次
4.4 调度日志查看
- 点击查看
- 操作按钮–>执行日志