springboot使用 @EnableScheduling、@Scheduled开启定时任务
1.在main启动项添加一个注解@EnableScheduling
package com.example.springmybatis; import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.scheduling.annotation.EnableScheduling; @EnableScheduling
@SpringBootApplication
//@MapperScan("com.example.springmybatis.dao")
public class SpringMybatisApplication { public static void main(String[] args) {
SpringApplication.run(SpringMybatisApplication.class, args);
}
}
2.在类中添加@Component,方法上添加@Scheduled
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component; import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date; @Component
public class SchedulerTask {
//想要开启定时任务,必须在启动页加上@EnableScheduling
@Scheduled(cron="30 10 1 * * ?")
public void aTask(){
try {
DateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(sdf.format(new Date())+"*********A任务每20秒执行一次进入测试");
} catch (Exception e) {
e.printStackTrace();
}
}
}
3.cron表达式含义:
* 0 0 10,14,16 * * ?每天上午10点、下午两点、下午4点整触发
0 0/30 9-17 * * ? 每天朝九晚五内每隔半小时触发
0 15 10 ? * MON-FRI 周一至周五的上午10:15触发
0 0/5 * * * ?每5分钟触发
10 0/5 * * * ?每隔5分钟的第10秒触发(即10:00:10、10:05:10、10:10:10等)
30 * * * * ? 每半分钟触发
30 10 * * * ? 每小时的10分30秒触发
30 10 1 * * ? 每天1点10分30秒触发
30 10 1 20 * ? 每月20号1点10分30秒触发
30 10 1 20 10 ? * 每年10月20号1点10分30秒触发
30 10 1 20 10 ? 2011 2011年10月20号1点10分30秒触发
30 10 1 ? 10 * 2011 2011年10月每天1点10分30秒触发
30 10 1 ? 10 SUN 2011 2011年10月每周日1点10分30秒触发
15,30,45 * * * * ? 每15秒,30秒,45秒时触发
15-45 * * * * ? 15到45秒内,每秒都触发
15/5 * * * * ? 每分钟的每15秒开始触发,每隔5秒触发一次
15-30/5 * * * * ? 每分钟的15秒到30秒之间开始触发,每隔5秒触发一次
0 0/3 * * * ? 每小时的第0分0秒开始,每三分钟触发一次
0 15 10 ? * MON-FRI 星期一到星期五的10点15分0秒触发
0 15 10 L * ? 每个月最后一天的10点15分0秒触发
0 15 10 LW * ? 每个月最后一个工作日的10点15分0秒触发
0 15 10 ? * 5L 每个月最后一个星期四的10点15分0秒触发
0 15 10 ? * 5#3 每个月第三周的星期四的10点15分0秒触发
springboot使用 @EnableScheduling、@Scheduled开启定时任务的更多相关文章
- SpringBoot中使用@Scheduled创建定时任务
SpringBoot中使用@Scheduled创建定时任务 定时任务一般会在很多项目中都会用到,我们往往会间隔性的的去完成某些特定任务来减少服务器和数据库的压力.比较常见的就是金融服务系统推送回调,一 ...
- 定时任务-----Springboot中使用Scheduled做定时任务----http://www.cnblogs.com/lirenqing/p/6596557.html
Springboot中使用Scheduled做定时任务---http://www.cnblogs.com/lirenqing/p/6596557.html 已经验证的方案: pom文件加入依赖 < ...
- SpringBoot之使用Scheduled做定时任务
定时任务有好多开源框架比如Quartz,@Scheduled是Spring的一个定时任务注解,通过注解配置就能够轻量级的定时任务,简单方便. 一.@Scheduled注解介绍 这里先贴上@Schedu ...
- Springboot中使用Scheduled做定时任务
在开发中,定时任务是常见的功能,在spring boot 下开发定时任务其实很简单,具体代码如下: 1.配置依赖包pom.xml 由于默认的maven仓库经常访问不了,这里采用了阿里云的maven仓库 ...
- springboot开启定时任务 添加定时任务 推送
最近在自学Java的springboot框架,要用到定时推送消息.参考了网上的教程,自己调试,终于调好了.下面将网上的教程归纳下,总结复习下. springboot开启定时任务 在SpringBo ...
- SpringBoot使用@Scheduled创建定时任务
定时任务一般会存在中大型企业级项目中,为了减少服务器.数据库的压力往往会采用时间段性的去完成某些业务逻辑.比较常见的就是金融服务系统推送回调,一般支付系统订单在没有收到成功的回调返回内容时会持续性的回 ...
- SpringBoot与异步任务、定时任务、邮件任务
异步任务 在需要开启异步的服务加上注解:@Async @Service public class AsyncService { //告诉SpringBoot这是一个异步任务,SpringBoot会自动 ...
- SpringBoot系列:Spring Boot定时任务Spring Schedule
Spring Schedule是Spring提供的定时任务框架,相较于Quartz,Schedule更加简单易用,在中小型应用中,对于大部分需求,Schedule都可以胜任. 一.Spring Sch ...
- SpringBoot第十七篇:定时任务
作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/11076555.html 版权声明:本文为博主原创文章,转载请附上博文链接! 引言 相信大家对 ...
随机推荐
- Spring IoC源码解析之invokeBeanFactoryPostProcessors
一.Bean工厂的后置处理器 Bean工厂的后置处理器:BeanFactoryPostProcessor(触发时机:bean定义注册之后bean实例化之前)和BeanDefinitionRegistr ...
- [转] java开源游戏
收藏一下 triplea Triplea是一个开放源码的boardgame.它允许玩家选择各种各样的战略版图游戏(如:轴心国或同盟军).TripleA引擎支持联网对战,支持声音,支持使用XML文 ...
- java面向对象中的集合
1.学习集合的原因? A.数组是面向过程的,集合是面向对象的. B.集合是类,具备类的封装,继承,多态...超强功能. C.数组是固定长度,集合是可变长度 D.数组没办法获得真实的元素个数:集合可以. ...
- (十一)c#Winform自定义控件-列表
前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. 开源地址:https://gitee.com/kwwwvagaa/net_winform_custom_control ...
- 探究光线追踪技术及UE4的实现
目录 一.光线追踪概述 1.1 光线追踪是什么 1.2 光线追踪的特点 1.3 光线追踪的历史 1.4 光线追踪的应用 二.光线追踪的原理 2.1 光线追踪的物理原理 2.2 光线追踪算法 2.3 R ...
- CSV Data Set Config 拓展开发
1.目的 在日常的性能测试项目中,经常会遇到参数化的问题,我们所熟知的LR工具对参数化支持非常友好,然而JMeter相对逊色一些.大家都知道在使用JMeter工具参数化时常用CSV Data Set ...
- EMCAscript6随心所记
es6的支持情况http://kangax.github.io/compat-table/es6/ 1.let命令 基本用法 ES6新增了let命令,用来声明变量.它的用法类似于var,但是所声明的变 ...
- 逆向破解之160个CrackMe —— 013
CrackMe —— 013 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...
- Docker:镜像的迁移
从202将现有镜像搬到207的过程. 先说导出,两种方法:Docker save 和 docker export,前者保存镜像,后者导出容器. docker save docker.io/java:7 ...
- Java基础部分-面试题
1.java中的数据类型有哪些? 数据类型主要分为基本数据类型和引用数据类型. 基本数据类型主要包括: 整数类型: byte.short.int.long 浮点数:float.double 布尔类型: ...