定时任务XXL-Job

张开发
2026/4/3 22:10:06 15 分钟阅读
定时任务XXL-Job
目录为什么是XXL-JobSpringBoot 整合XXL-Job1环境准备2SpringBoot 项目依赖3application.yml 配置4XXL-Job 配置类5定时任务业务类核心代码6调度中心Web可视化界面配置为什么是XXL-Job优点 原生分布式微服务 / 分布式首选社区活跃功能全面支持多种编程语言比Quartz更易用。缺点需要单独部署【XXL-Job调度中心】SpringBoot 整合XXL-Job核心有一个独立运行的调度中心admin你的业务服务是执行器executor调度中心统一发命令执行器去执行任务1环境准备下载 XXL-Job 源码https://github.com/xuxueli/xxl-job执行tables_xxl_job.sql独立部署或打开XXL-Job 源码项目并启动xxl-job-admin调度中心默认端口 8080账号密码admin / 1234562SpringBoot 项目依赖dependencygroupIdcom.xuxueli/groupIdartifactIdxxl-job-core/artifactIdversion2.4.0/version/dependency3application.yml 配置xxl:job:# 调度中心地址admin:addresses:http://127.0.0.1:8080/xxl-job-admin# 执行器配置executor:# 执行器名称在调度中心配置一致appname:xxl-job-demo# 执行器端口每个服务不能重复port:9999# 调度中心默认tokenaccessToken:default_token4XXL-Job 配置类ConfigurationpublicclassXxlJobConfig{Value(${xxl.job.admin.addresses})privateStringadminAddresses;Value(${xxl.job.executor.appname})privateStringappName;Value(${xxl.job.executor.port})privateintport;Value(${xxl.job.accessToken})privateStringaccessToken;BeanpublicXxlJobSpringExecutorxxlJobExecutor(){XxlJobSpringExecutorexecutornewXxlJobSpringExecutor();executor.setAdminAddresses(adminAddresses);executor.setAppname(appName);executor.setPort(port);executor.setAccessToken(accessToken);returnexecutor;}}5定时任务业务类核心代码ComponentpublicclassDemoJob{/** * 定时任务方法 * value demoJobHandler 要和调度中心配置一致 */XxlJob(demoJobHandler)publicvoiddemoJob(){// 你的业务逻辑System.out.println(XXL-Job 执行定时任务System.currentTimeMillis());}}6调度中心Web可视化界面配置执行器管理 → 新增执行器AppNamexxl-job-demo名称随便填注册方式自动注册任务管理 → 新增任务执行器选上面的Cron0/5 * * * * ?每5秒JobHandlerdemoJobHandler启动任务查看日志

更多文章