使用
一、 首先从GitHub上面将项目clone下来,如果网络问题导致速度慢也可以从Gitee上面拉取
GitHub地址:https://github.com/xuxueli/xxl-job
二、下载好之后将压缩包解压,然后通过IDEA打开,将Maven编译好后项目结构如下
三、然后运行自带的tables_xxl_job.sql文件,在Navcation中去运行,生成需要的表
得到需要的基础表
四、打开xxl-job-admin模块,在application.properties中进行后台的配置
注意在数据库地址哪里加上时区属性,否则乱码
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/xxl_job?Unicode=true&characterEncoding=UTF-8&serverTimezone=UTC
然后我们启动XxlJobAdminApplication类,访问http://localhost:8080/xxl-job-admin 默认账户admn,密码123456
定位到springboot模块下的jobhandler层下面
这是我自己写的一个定时任务,用来测试
package com.xxl.job.executor.service.jobhandler;
import com.xxl.job.core.handler.IJobHandler;
import com.xxl.job.core.handler.annotation.XxlJob;
import org.springframework.stereotype.Component;
/**
* @author longfeng
* @date 2021/5/10 14:52
* 编写自己的定时任务
* 继承IJobHandle
*/
@Component
public class MyJobHandle extends IJobHandler {
/**
* 重写execute 方法,里面执行相应的功能
* @throws Exception
*/
@Override
@XxlJob(value = "MyJobHandle1")
public void execute() throws Exception {
System.out.println("我们不能失去信仰");
}
}
在任务管理里面新增任务
然后在找到刚刚添加的任务,点击操作里面的启动
可以看到结果,刚刚编写的代码已经被执行了
关于XXL-JOB的基本使用就到这里了,如果在项目中去集成也很简单
在项目中引入依赖
<dependency>
<groupId>com.xuxueli</groupId>
<artifactId>xxl-job-core</artifactId>
<version>2.0.1</version>
</dependency>
将xxl-job-executor-sample-springboot这个模块下的XxlJobConfig复制一份到项目中,然后将相关配置设置好即可
我配置过程中遇到的问题:
1、要启动XxlJobAdminApplication服务,再启动springboot模块下的XxlJobExecutorApplication服务,否则无法查找到地址。
2、要注意依赖的版本要一致(服务端和客户端pom文件依赖版本一致)否则也会出现问题。
3、appname要一致。
4、端口后不能冲突(项目服务器启动默认是8080,我这里就不能是8080了,所以是8081。
5、admin.address这个地址不能错,就是上面启动XxlJobAdminApplication服务的地址
说明:文档资料都是cope过来的
地址: https://www.freesion.com/article/8885460320/