Spring Boot2.0之 整合XXL-Job

本文档介绍了如何在Spring Boot 2.0项目中整合XXL-Job,参照GitHub上的SpringBoot demo,创建Maven工程并配置pom.xml。核心配置包括设置调度中心地址`xxl.job.admin.addresses`,修改Job名称,以及通过config配置类读取properties信息注入到Spring Boot应用。项目结构包含Controller和Job模块,启动调度中心和Job的Spring Boot服务后,运行成功。

Spring Boot2.0之 整合XXL-Job

参考git上面的 springboot demo

 

创建maven工程:

pom:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.toov5</groupId>
  <artifactId>springboot-xxl-job</artifactId>
  <version>0.0.1-SNAPSHOT</version>
   
  	<properties>
		<javax.servlet-api.version>3.0.1</javax.servlet-api.version>
		<jsp-api.version>2.2</jsp-api.version>

		<spring.version>4.3.14.RELEASE</spring.version>
		<jackson.version>2.9.4</jackson.version>
		<aspectjweaver.version>1.8.13</aspectjweaver.version>
		<slf4j-api.version>1.7.25</slf4j-api.version>
		<freemarker.version>2.3.23</freemarker.version>
		<junit.version>4.12</junit.version>

		<jetty-server.version>9.2.24.v20180105</jetty-server.version>
		<hessian.version>4.0.51</hessian.version>
		<httpclient.version>4.5.5</httpclient.version>
		
		<commons-exec.version>1.3</commons-exec.version>
		<commons-collections4.version>4.1</commons-collections4.version>
		<commons-lang3.version>3.7</commons-lang3.version>
		<commons-email.version>1.5</commons-email.version>

		<c3p0.version>0.9.5.2</c3p0.version>
		<mysql-connector-java.version>5.1.45</mysql-connector-java.version>
		<mybatis-spring.version>1.3.1</mybatis-spring.version>
		<mybatis.version>3.4.5</mybatis.version>

		<groovy-all.version>2.4.13</groovy-all.version>
		<quartz.version>2.3.0</quartz.version>

		<spring-boot.version>1.5.10.RELEASE<
<think>好的,我现在需要帮助用户在Spring Boot项目中集成xxl-job,并配置yml文件。首先,我得回想一下相关的步骤和可能遇到的问题。根据用户提供的引用内容,他们提到了添加依赖、初始化数据库以及配置yml文件。 首先,用户需要添加xxl-job的客户端依赖。根据引用[1]和[3],依赖的groupId是com.xuxueli,artifactIdxxl-job-core,版本可以是2.3.0或者根据项目需要选择最新的。这里需要注意版本号的正确性,避免出现兼容性问题。 接下来是数据库的初始化。引用[2]提到需要执行SQL脚本,位置在/xxl-job/doc/db/tables_xxl_job.sql。用户需要确保数据库已经创建,并正确执行这个脚本,否则调度功能可能无法正常工作。这部分可能会遇到路径问题或者数据库权限问题,需要提醒用户检查。 然后是配置application.yml文件。根据引用内容,需要配置xxl-job的相关属性,比如admin地址、执行器信息、accessToken等。需要确定每个配置项的作用,例如xxl.job.admin.addresses对应调度中心的地址,执行器的appname和port需要与调度中心配置一致。另外,accessToken如果调度中心启用了,则需要填写,否则留空。这里可能需要注意缩进和格式,避免yml语法错误。 另外,用户可能需要创建XxlJobConfig配置类,用来设置XxlJobSpringExecutor。这里需要注入配置参数,并正确初始化executor。需要确保这些参数和yml中的配置对应,尤其是appname、address、ip、port等。 可能用户在实际操作中会遇到的问题包括依赖无法下载、数据库连接失败、配置项错误导致执行器无法注册到调度中心等。需要提醒用户检查依赖版本、数据库连接信息以及网络连通性。 最后,生成相关问题的时候,要围绕集成步骤、配置项、数据库初始化、常见错误等方向,帮助用户进一步深入理解可能遇到的问题。</think>### Spring Boot 整合 XXL-Job 步骤及配置说明 #### 1. 添加依赖 在项目的 `pom.xml` 中添加 XXL-Job 客户端依赖(版本建议与调度中心保持一致): ```xml <dependency> <groupId>com.xuxueli</groupId> <artifactId>xxl-job-core</artifactId> <version>2.3.0</version> </dependency> ``` 引用最新版本可参考官方文档[^3]。 #### 2. 初始化数据库 执行官方提供的 SQL 脚本初始化调度数据库: ```sql /xxl-job/doc/db/tables_xxl_job.sql ``` 确保数据库连接信息正确配置[^2]。 #### 3. 配置 application.yml ```yaml # XXL-Job 配置 xxl: job: admin: addresses: http://localhost:8080/xxl-job-admin # 调度中心地址 accessToken: # 若调度中心启用Token则需填写 executor: appname: xxl-job-executor-sample # 执行器名称(需与调度中心配置一致) address: ip: port: 9999 # 执行器端口(默认9999) logpath: /data/applogs/xxl-job/jobhandler # 日志路径 logretentiondays: 30 ``` **关键配置说明**: - `admin.addresses`:调度中心管理界面地址 - `executor.appname`:需在调度中心"执行器管理"中预先注册 - `executor.port`:执行器服务端口,需保证未被占用 #### 4. 创建配置类 ```java @Configuration public class XxlJobConfig { @Value("${xxl.job.admin.addresses}") private String adminAddresses; @Value("${xxl.job.executor.appname}") private String appname; @Bean public XxlJobSpringExecutor xxlJobExecutor() { XxlJobSpringExecutor executor = new XxlJobSpringExecutor(); executor.setAdminAddresses(adminAddresses); executor.setAppname(appname); executor.setPort(9999); return executor; } } ``` #### 5. 创建任务处理器 ```java @Component public class DemoJobHandler { @XxlJob("demoJobHandler") public void execute() { // 任务逻辑 } } ```
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值