https://github.com/xuxueli/xxl-job
http://gitee.com/xuxueli0323/xxl-job
2.中央仓库地址,pom依赖3.使用git 工具将源码下载到本地 4.使用idea 工具打开xxl-job项目com.xuxueli xxl-job-core2.3.0
更改xxl-job-admin下的的application.properties文件 改为自己的数据库账号密码,修改之后双击右边的package ,将项目打包。
注:**还要执行xxl给我们提供的数据库文件,在下载的源码的这个目录xxl-jobdocdb
5.打包打开打包后的项目,并使用java -jar 打包后的包名 然后回车(这个命令是将打包后的项目执行)
执行成功之后,在浏览器输入http://127.0.0.1:8080/xxl-job-admin,用户名admin,密码123456
就可以进入xxl任务调度中心了
6.创建项目接着就是创建我们自己的springboot项目
添加pom依赖
7.新建XxlJobConfig ,这个是配置类,主要配置xxl的基础信息mysql mysql-connector-java runtime org.springframework.boot spring-boot-starter-test test com.xuxueli xxl-job-core 2.3.0 log4j log4j 1.2.17 org.slf4j slf4j-api 1.7.25 org.slf4j slf4j-log4j12 1.7.25 test org.slf4j slf4j-simple 1.7.25 test org.projectlombok lombok 1.18.22
@Configuration
public class XxlJobConfig {
private Logger logger = LoggerFactory.getLogger(XxlJobConfig.class);
@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() {
logger.info(">>>>>>>>>>> xxl-job config init.");
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;
}
8.创建MyJobHandle类 ,这个类就是用来自动执行任务的
@Slf4j
@Component
public class MyJobHandle {
@XxlJob("myJob1")
public ReturnT myjob1(String params){
log.info("my job1 任务执行了。。。。。",params);
return ReturnT.SUCCESS;
}
@XxlJob("myJob2")
public ReturnT myJob2(String params){
log.info("my job2 任务执行了。。。。。",params);
return ReturnT.SUCCESS;
}
}
9.添加application.yaml配置
logging:
config: classpath:logback.xml
xxl:
job:
accessToken: ''
admin:
addresses: http://127.0.0.1:8080/xxl-job-admin
executor:
address: ''
#执行器名字,需要和网页中新建的执行器名字一致
appname: execute-job
ip: ''
logpath: D:资料集git bashxxl-log
logRetentionDays: 30
port: 9998
server:
port: 8989
10 新建logback.xml文件5,放在resources 目录下即可
logback %d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n ${log.path} ${log.path}.%d{yyyy-MM-dd}.zip 1MB 10MB %date %level [%thread] %logger{36} [%file : %line] %msg%n
现在就可以去到http://127.0.0.1:8080/xxl-job-admin/jobgroup 这页面添加执行器了,这个执行器就是appname ,要和你的配置文件一致才可以使用
去到任务管理界面添加我们的任务了(添加任务后,点击任务右边的run,就运行了)
IDEA控制台:
就可以看见我们的任务已经执行了



