JooLun Plus 百科 ⬇ 源码下载

04.07 XXL JOB 定时任务使用

JooLun 于 2026-10-21 14:40:14 +08:00 修改了此页面

系统中未用到xxl-job,并非JooLun源码部分,只对其做了支持,仅供学习

官方文档:http://www.xuxueli.com/xxl-job/

XXL-JOB服务端本地部署

<xxl.job.version>2.4.0</xxl.job.version>
  • 新建数据库joolun_job,将脚本xxl-job\doc\db\tables_xxl_job.sql导入到新建的joolun_job库中
  • 下载下来的源码中包含了三个项目,我们只需将xxl-job-admin项目导入到idea
  • 修改配置文件xxl-job-admin/src/main/resources/application.properties中的数据源
### xxl-job, datasource
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/joolun_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
  • 右击运行xxl-job-admin/src/main/java/com/xxl/job/admin/XxlJobAdminApplication.java
  • 运行成功后在浏览器量打开http://127.0.0.1:8080/xxl-job-admin
  • 以上服务端就成功运行起来了

XXL-JOB服务端生产环境部署

  • 新建数据库joolun_job,将脚本xxl-job\doc\db\tables_xxl_job.sql导入到新建的joolun_job库中
  • 修改配置文件xxl-job-admin/src/main/resources/application.properties中的数据源
  • mvn clean install打包
  • 将生成的xxl-job-admin-2.4.0.jar包上传到服务器
  • 启动
nohup java -Xms128m -Xmx256m -jar xxl-job-admin-2.4.0.jar >xxl-job-admin.out &

客户端使用(可参考joolun-mall-api模块)

  • 文档仅用joolun-mall-api模块举例,具体使用需自己开发
  • 在需要定时任务的项目中添加依赖
<!--job-->
<dependency>
    <groupId>com.joolun</groupId>
    <artifactId>joolun-common-job</artifactId>
</dependency>
  • nacos中给当前项目的配置文件追加如下配置

xxl:
  job:
    # 开关
    enabled: true
    admin:
      # xxl_job后台访问地址
      addresses: http://127.0.0.1:8080/xxl-job-admin
    executor:
      appname: joolun-mall-api
      # 单机部署多个执行器时,注意要配置不同执行器端口
      port: 9998
  • 编写业务代码(@XxlJob("orderCancelJobHandler"))
@XxlJob("orderCancelJobHandler")
public ReturnT<String> orderCancelJobHandler(String s) {
    ShardingUtil.ShardingVO shardingVO = ShardingUtil.getShardingVo();
    XxlJobLogger.log("This is a demo job." + shardingVO);
    return SUCCESS;
}

通过调度中心启动定时任务

  • 访问调度中心(http://127.0.0.1:8080/xxl-job-admin)

  • 配置“执行器管理”,注意对应nacos中的配置信息,AppName对应上面nacos配置文件中的xxl.job.executor.appname

  • 配置执行器的对应“任务管理“新增任务,JobHandler对应上面任务Handler中@XxlJob("orderCancelJobHandler")注解的值,这里是orderCancelJobHandler

具体使用详细,请自行去XXL-JOB官网和百度学习