
SpringCloud整合定时任务
spring cloud、ruoyi、实现定时任务
原创“仓央乀”
1、在启动类上添加注解@EnableScheduling
package com.ruoyi;
import com.ruoyi.common.security.annotation.EnableCustomConfig;
import com.ruoyi.common.security.annotation.EnableRyFeignClients;
import com.ruoyi.common.swagger.annotation.EnableCustomSwagger2;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.web.client.RestTemplate;
/**
* 数据接口模块
* @author lmk
*/
@EnableScheduling
@EnableCustomConfig
@EnableCustomSwagger2
@EnableRyFeignClients
@SpringBootApplication
public class RuoYiRdiMesApplication {
public static void main(String[] args) {
SpringApplication.run(RuoYiRdiMesApplication.class, args);
System.out.println("(♥◠‿◠)ノ゙ 数据接口模块启动成功"
}
@Bean
RestTemplate restTemplate(){
return new RestTemplate();
}
}
2、创建定时任务类(定义执行的时间与步骤)
(1)CRON语句:设置执行规则【秒 分 时 日 月 周 年(默认当前年,可不写)】语句参考:https://cron.qqe2.com/
*:代表所有可能的值
-:指定范围
,:列出枚举 例如在分钟里,"5,15"表示5分钟和20分钟触发
/:指定增量 例如在分钟里,"3/15"表示从3分钟开始,没隔15分钟执行一次
?:表示没有具体的值,使用?要注意冲突
L:表示last,例如星期中表示7或SAT,月份中表示最后一天31或30,6L表示这个月倒数第6天,FRIL表示这个月的最后一个星期五
W:只能用在月份中,表示最接近指定天的工作日
#:只能用在星期中,表示这个月的第几个周几,例如6#3表示这个月的第3个周五
"0 0 12 * * ?"每天中午十二点触发
"0 15 10 ? * *"每天早上10:15触发
"0 15 10 * * ?"每天早上10:15触发
"0 15 10 * * ? *"每天早上10:15触发
"0 15 10 * * ? 2005"2005年的每天早上10:15触发
"0 * 14 * * ?"每天从下午2点开始到2点59分每分钟一次触发
"0 0/5 14 * * ?"每天从下午2点开始到2:55分结束每5分钟一次触发
"0 0/5 14,18 * * ?"每天下午2点至2:55和6点至6点55分两个时间段内每5分钟一次触发
"0 0-5 14 * * ?"每天14:00至14:05每分钟一次触发
"0 10,44 14 ? 3 WED"三月的每周三的14:10和14:44触发
"0 15 10 ? * MON-FRI"每个周一,周二,周三,周四,周五的10:15触发
"0 15 10 15 * ?"每月15号的10:15触发
"0 15 10 L * ?"每月的最后一天的10:15触发
"0 15 10 ? * 6L"每月最后一个周五的10:15触发
"0 15 10 ? * 6L 2002-2005"2002年至2005年的每月最后一个周五的10:15触发
"0 15 10 ? * 6#3"每月的第三个周五的10:15触发
"0 0 */1 * * ?"每小时执行一次
"0 0/5 * * * ?"每五钟执行一次
package com.ruoyi.rdimes.service.impl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
* 批量新增订阅业务层
* @author lmk
* @date 2023-06-28
*/
@Slf4j
@Service
@Component
public class SubscriptionsImpl implements Subscriptions {
/**
* 构造批量新增订阅Tag的List
* @author lmk
* @date 2023-06-28
*/
@Scheduled(cron = "0/5 * * * * ?")
public static void task1(){
System.out.println("aaa");
}
}
更多推荐
所有评论(0)