1、附上原文档地址
http://www.xuxueli.com/xxl-job/#/?id=%E6%96%87%E6%A1%A3%E5%9C%B0%E5%9D%80
2、git源码下载
http://gitee.com/xuxueli0323/xxl-job
3、在需要集成xxl-job的项目中导入依赖(最新稳定版本根据上面的maven仓库地址选一个即可)
<!-- http://repo1.maven.org/maven2/com/xuxueli/xxl-job-core/ -->
<dependency>
<groupId>com.xuxueli</groupId>
<artifactId>xxl-job-core</artifactId>
<version>${最新稳定版本}</version>
</dependency>
4、下载源码之后,导入idea,并初始化调度数据库所需要的表,表的位置在 /xxl-job/doc/db/tables_xxl_job.sql
5、表初始化完成之后,需要更改xxl-job-admin项目中xxl-job的datasource的连接属性(url,username,password),其余配置默认即可
6、本地就可以启动了,访问地址localhost:8080/xxl-job-admin,即可以到xxl-job的登录地址
7、选择xxl-job中的一个样例版本,这里我以xxl-job-executor-sample-springboot为例,拷贝其中的XxlJobConfig到我们需要集成xxl-job的项目中,然后在配置文件中配置xxl-job的属性,仿照xxl-job-executor-sample-springboot中的即可,最后配置完成之后大概是这个样子
###xxl-job-executor-sample-springboot中的配置
### xxl-job admin address list, such as "http://address" or "http://address01,http://address02"
xxl.job.admin.addresses=http://127.0.0.1:8080/xxl-job-admin
### xxl-job executor address
xxl.job.executor.appname=xxl-job-executor-sample
xxl.job.executor.ip=
xxl.job.executor.port=9999
### xxl-job, access token
xxl.job.accessToken=
### xxl-job log path
xxl.job.executor.logpath=/data/applogs/xxl-job/jobhandler
### xxl-job log retention days
xxl.job.executor.logretentiondays=-1
###自己项目的配置
xxl:
job:
admin:
addresses: http://127.0.0.1:8080/xxl-job-admin
executor:
appname: xxl-job-executor-dudutest
ip:
port: 9998
logpath : /data/applogs/xxl-job/jobhandler
logretentiondays: -1
accessToken:
8、在xxl-job中新增执行器,执行器的名字即为,上面我们配置的 xxl-job-executer-appname 后面的,注册方式默认自动注册即可
9、在我们的项目中新增JobHandler
@JobHandler(value="duduJobHandler")
@Component
public class DuJobHandler extends IJobHandler {
@Override
public ReturnT<String> execute(String param) throws Exception {
XxlJobLogger.log("XXL-JOB, Hello World.");
for (int i = 0; i < 5; i++) {
System.out.println("===dududu==>>"+i);
}
return SUCCESS;
}
}
10、在xxl-job管理页面中新增任务,其中 JobHandler 中的输入框填我们上面JobHandler的value
11、需要注意的是,集成xxl-job必须依赖xxl-job-admin项目来管理,也就是需要先启动xxl-job-admin,再启动我们的服务注册上去
12、如果是同一台服务器,xxl.job.admin.address为127.0.0.1最佳,别的有时候可能会有点问题.