//执行器cron表达式 String cron = CronUtil.getCron(wxSubscription.getReminderTime()); log.info("当前cron表达式:----" + cron); //执行器任务参数, String mId = String.valueOf(wxSubscription.getId()); //执行器,任务Handler名称 String hand
时间: 2023-07-15 16:13:39 浏览: 71
lerName = "wxSubscriptionReminderJobHandler";
这段代码是一个定时任务的执行器,使用了Cron表达式来指定任务执行的时间,其中`wxSubscription.getReminderTime()`是获取到一个时间参数,然后将其转换成Cron表达式,并保存在`cron`变量中。`wxSubscription.getId()`是获取到一个ID参数,用于作为任务参数传递给任务处理器。最后,指定了任务处理器的名称为`wxSubscriptionReminderJobHandler`。通常情况下,该任务处理器会根据传递的参数去执行一些业务逻辑。
相关问题
xxl-job例子
xxl-job 是一个分布式任务调度平台,可以实现任务的定时执行、分片执行、任务监控等功能。下面是一个简单的 xxl-job 的例子:
1. 引入 xxl-job 的依赖
```xml
<dependency>
<groupId>com.xxl-job</groupId>
<artifactId>xxl-job-core</artifactId>
<version>2.3.0</version>
</dependency>
```
2. 编写任务类
```java
public class MyJobHandler extends IJobHandler {
@Override
public ReturnT<String> execute(String param) throws Exception {
System.out.println("Hello xxl-job!");
return ReturnT.SUCCESS;
}
}
```
3. 注册任务类
```java
@Bean(initMethod = "start", destroyMethod = "destroy")
public XxlJobSpringExecutor xxlJobExecutor() {
XxlJobSpringExecutor executor = new XxlJobSpringExecutor();
executor.setAdminAddresses(adminAddresses);
executor.setAppname(appName);
executor.setAddress(address);
executor.setIp(ip);
executor.setPort(port);
executor.setAccessToken(accessToken);
executor.setLogPath(logPath);
executor.setLogRetentionDays(logRetentionDays);
// 注册任务处理器
List<IJobHandler> jobHandlers = new ArrayList<>();
jobHandlers.add(new MyJobHandler());
executor.setJobHandlers(jobHandlers);
return executor;
}
```
4. 配置任务
在 xxl-job 管理后台中,新增任务,配置任务名称、cron 表达式、路由策略等信息,并指定任务处理器为 `com.example.MyJobHandler`。
5. 运行任务
启动 xxl-job 执行器,任务将会按照设定的 cron 表达式定时执行。
```java
@SpringBootApplication
@EnableScheduling
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@Bean(initMethod = "start", destroyMethod = "destroy")
public XxlJobSpringExecutor xxlJobExecutor() {
// ...
}
}
```
阅读全文