注解式Schedule配置定时任务

@Component
public class ScheduledTasks {
    @Autowired
    private ActivityService activityService;
//    1000即1s
    @Scheduled(fixedRate = 1000)
    public void reportCurrentTime() {
        System.out.println("当前时间: " + DateUtil.getNow());
        log.info("打印当前时间: {}.", DateUtil.getNow());
    }

    /*每天四点更新一次*/
    @Scheduled(cron = "0 0 4 * * ? ")
    public void updateRankLIstToRedis() {
        /* redis超时设置 expire多次设置会覆盖 */
        List<RankInfoDTO> list = activityService.countRankList(ACTIVITY_WEB);
    }
}

很简单,要注意的是 设置时间间隔有两种 corn和fixedRate,一种适用于较长的时间而且能设置特定时间,一种则较短。

cron的话,百度第一个就是傻瓜式工具网页,不用怕不会写。

原文地址:https://www.cnblogs.com/ydymz/p/8652556.html