1.在service 层写一个task
需要标记注解 @component
@Component public class MyTask { @Autowired RedisTemplate redisTemplate; @Autowired FloorRep floorRep; //mysql数据增量到es //10秒运行 ,每隔40秒执行一下 // @Scheduled(initialDelay = 1000,fixedDelay = 4*10000) @Scheduled(cron = "0 28 9 ? * * ") public void fromRedisToEs(){ System.out.println("定时任务启动了-----"); List addFloors = redisTemplate.opsForList().range("addFloors", 0, -1); if (null!=addFloors&&addFloors.size()>0){ //添加 floorRep.saveAll(addFloors); redisTemplate.delete("addFloors"); } } }
scheduled注解里面参数的值 * 表示所有的值 在分上表示没一分钟都执行
? 表示不指定值
- 表示区间 在小时上设置 10-12 表示10,11,12点都执行
/用于递增触发 在秒上面写 */5 每隔5秒触发
没隔5秒触发 */5 * * * * ?
每隔1分钟执行一次 0 */1 * * * ?
2.reids中的内容 是从ack中获取的
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)