Spring Boot 要实现定时任务只要加 3 个注解就可以完成完成 只要分别在启动类,类,方法 加上
@EnableScheduling @Component @Scheduled 这三个注解缺一个都不行

1.在启动类加上 @EnableScheduling 注解

@EnableScheduling //定时任务在启动类注解
@SpringBootApplication
public class PulsApplication {public static void main(String[] args) {SpringApplication.run(PulsApplication.class, args);}
}

2.在需要设置定时任务的类上加 @Component 注解 ,在定时任务类里写需要执行的方法,然后在方法上加上 @Scheduled 注解并设置时间,这个方法就会在设定的时间里执行 

@Component //定时任务在类上的注解
public class TimeTask {/*** initialDelay 第一次启动任务延迟时间(单位 毫秒)* fixedRate    每次任务间隔时间 (单位 毫秒)*/@Scheduled(initialDelay = 1000,fixedRate = 3000) //定时任务在方法上的注解public void timedA(){System.out.println("A 小熊369  "+new Date());}/*** cron 表达式 秒 分 时 天 月 年* cron = "10 44 21 * * ?" 表示每天 21点 44分 10秒 开始执行*/@Scheduled(cron = "10 44 21 * * ?") //定时任务在方法上的注解public void timedB(){System.out.println("B 小熊369  "+new Date());}
}

定时任务执行执行效果图:

@Scheduled 注解里一般设置时间有两种方式

  • 一种是用 initialDelay 设置项目启动后延迟多少时间后执行和用 fixedRate 设置每次任务间隔时间,这种一般用于不需要准时准点时使用,例如每30分钟更新一下数据库,统计一下活跃数据等,如果有准时准点的要求用 cron 表达式会更好。
  • cron 表达式 一般用于准时统计,例如每个月 1号生成上一个月的月报,或者是凌晨时统计前一天的数据。

cron 表达式在线自动生成工具,下面两个选一个点开即可使用

Cron表达式生成器 - Toolzl工具https://www.toolzl.com/tools/croncreate.html下面这个工具比上面的少了一个季节的选择

在线Cron表达式生成器通过这个生成器,您可以在线生成任务调度比如Quartz的Cron表达式,对Quartz Cron 表达式的可视化双向解析和生成.https://cron.qqe2.com/cron 表达式的使用示例

下面只是一些示例,要全面学习 可以去阿里云Cron表达式 - 云服务器 ECS - 阿里云

示例 说明
0 15 10 ? * * 每天上午10:15执行任务
0 15 10 * * ? 每天上午10:15执行任务
0 0 12 * * ? 每天中午12:00执行任务
0 0 10,14,16 * * ? 每天上午10:00点、下午14:00以及下午16:00执行任务
0 0/30 9-17 * * ? 每天上午09:00到下午17:00时间段内每隔半小时执行任务
0 * 14 * * ? 每天下午14:00到下午14:59时间段内每隔1分钟执行任务
0 0-5 14 * * ? 每天下午14:00到下午14:05时间段内每隔1分钟执行任务
0 0/5 14 * * ? 每天下午14:00到下午14:55时间段内每隔5分钟执行任务
0 0/5 14,18 * * ? 每天下午14:00到下午14:55、下午18:00到下午18:55时间段内每隔5分钟执行任务
0 0 12 ? * WED 每个星期三中午12:00执行任务
0 15 10 15 * ? 每月15日上午10:15执行任务
0 15 10 L * ? 每月最后一日上午10:15执行任务
0 15 10 ? * 6L 每月最后一个星期六上午10:15执行任务
0 15 10 ? * 6#3 每月第三个星期六上午10:15执行任务
0 10,44 14 ? 3 WED 每年3月的每个星期三下午14:10和14:44执行任务

Spring Boot 实现定时任务相关推荐

  1. Spring Boot实现定时任务的动态增删启停

    欢迎关注方志朋的博客,回复"666"获面试宝典 作者 | jessehua 来源 | https://www.jianshu.com/p/0f68936393fd 在spring ...

  2. Spring Boot 实现定时任务的动态增删启停

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 来源:jianshu.com/p/0f68936393fd 添加执 ...

  3. Spring Boot 注解定时任务

    注解 @Scheduled(cron = "0/5 * * * * ?") 相当于原来的xml版本的如下配置 <task:scheduled ref="schedu ...

  4. Spring Boot之定时任务

    定时任务是我们在项目中经常遇到的场景,也是进场需要使用的场景.比如说订单,没10分钟需要取消没有未支付的订单等等. Timer Timer是 JDK 自带的定时执行的工具类,无需任何的处理就可以直接使 ...

  5. spring boot 开启定时任务的三种方式

    序言 使用SpringBoot创建定时任务非常简单,目前主要有以下三种创建方式: 一.基于注解(@Scheduled) 二.基于接口(SchedulingConfigurer) 前者相信大家都很熟悉, ...

  6. Spring Boot 实现定时任务的 4 种方式

    点击上方"方志朋",选择"设为星标" 做积极的人,而不是积极废人 作者:Wan QingHua wanqhblog.top/2018/02/01/SpringB ...

  7. SpringBoot系列:Spring Boot集成定时任务Quartz

    一.关于Quartz Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用.在java企业级应用中,Q ...

  8. SpringBoot系列:Spring Boot集成定时任务Quartz,java百度云短信发送

    然后创建QuartzConfig,接着定义JobDetail,JobDetail由JobBuilder构建,同时关联了任务QuartzJob1. @Configuration public class ...

  9. Spring Boot 整合定时任务完成 从0 到1

    Java 定时任务学习 定时任务概述 > 定时任务的应用场景非常广泛, 如果说 我们想要在某时某地去尝试的做某件事 就需要用到定时任务来通知我们 ,大家可以看下面例子 如果需要明天 早起,哪我们 ...

最新文章

  1. 图解Telnet命令和命令行看邮件
  2. linux kernel 中mdelay() 与msleep()的区别
  3. Linux下动态链接库so文件覆盖导致coredump
  4. Wowza® Media Systems 使用配置手册。
  5. org.springframework.http.converter.HttpMessageNotReadableException: Required request body is(亲测)
  6. Android开发中java.lang.RuntimeException: Unable to start activity ComponentInfo{xxx}: java.lang.NullPoi
  7. qq文件对方接收后一定会有提示吗_为什么微信、QQ不推出已读功能?因为它敢出网友就敢卸载...
  8. 在Laravel中使用数据库事务以及捕获事务失败后的异常
  9. jQuery插件开发(转)
  10. 连通性1 求无向图的low值
  11. JVM基础知识1---尚硅谷视频笔记整理
  12. syslinux制作U盘启动器
  13. 数据库语言,转载自:红黑联盟
  14. 中国云计算行业发展前景
  15. 838计算机考研用书,河海计算机838考研大纲(5页)-原创力文档
  16. 【学习笔记】行人异常行为检测的综述
  17. GOOGLE卫星地图 计算方式
  18. RabbitMQ的工作模式
  19. SpringBoot+Redis 实现一个微博热搜!
  20. Windows 7 桌面上的 Internet Explorer 图标消失

热门文章

  1. C++先序和中序确定二叉树
  2. 2345加速浏览器有哪些特点
  3. 微信忘记支付密码,实名认证的身份证又没有办理银行卡怎么破?(未解决)
  4. ucos 和uclinux的区别及各自的特点
  5. CentOs 7 中vim文本编辑器的下载及使用
  6. SpringBoot微信小程序商城(前台+后台)源码分享
  7. APP开发学习思路指导
  8. html css特效,15个超酷的CSS3代码特效展示
  9. Mysql组复制(MGR)——操作
  10. 7-4 平面向量加法 (15 分)---->c语言的深度刨析