xxljob的使用
1,项目配置注册不到xxljob执行器管理? xxl-job, executor registry config fail, appname is null.
查看执行器是否读取配置信息。
一、添加依赖
二、启动xxljob服务器
三、将服务注册到xxljob上
主要执行代码
@Slf4j
@Configuration
public class JobConfig {
@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.addresses}")
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;
@Value("${xxl.job.start}")
private boolean start;
@Bean
@ConditionalOnProperty(value = "xxl.job.start", havingValue = "true")
public XxlJobSpringExecutor xxlJobExecutor() {
log.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;
}
}
4,配置注解
@Scheduled(cron = "0 0/1 * * * * ?")
@XxlJob("everyMinuteExecute")
5,在xxljob配置定时任务
创建定时任务
//创建任务 JobInfo job = new JobInfo(); //设置任务属性 job.setJobDesc(lasReminderTriggerConfig.getJobRemark());// job.setAuthor(AuthenticationHelper.getCurrentUser()); job.setAlarmEmail(""); job.setScheduleType("CRON"); job.setScheduleConf(lasReminderTriggerConfig.getCronExpression());// job.setExecutorHandler("defaultReminderJob");// job.setExecutorParam(entity.getId());//设置任务参数 job.setChildJobId(""); job.setMisfireStrategy("DO_NOTHING"); job.setExecutorRouteStrategy("ROUND"); job.setExecutorBlockStrategy("SERIAL_EXECUTION"); job.setExecutorTimeout(0); job.setExecutorFailRetryCount(0); job.setGlueType("BEAN"); String jobInfo = timeTaskService.add(job);

浙公网安备 33010602011771号