Spring @Scheduled关键字
备注:本示例中我们使用的是spring 4.2.5版本。
在spring的上下文文件中修改标签:
增加Xmlns标签:xmlns:task=http://www.springframework.org/schema/task
修改xsi:schemaLocation标签,增加内容如下:
http://www.springframework.org/schema/task
http://www.springframework.org/schema/task/spring-task-4.2.xsd
增加任务扫描:
<task:annotation-driven/>
XML如下:
<?xml version="1.0"encoding="UTF-8"?>
<beansxmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instancexmlns:jaxws="http://cxf.apache.org/jaxws"
xmlns:tx="ttp://www.springframework.org/schema/tx"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:aop="ttp://www.springframework.org/schema/aop"
xmlns:util="http://www.springframework.org/schema/util"
xmlns:task="http://www.springframework.org/schema/task"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.2.xsd
http://cxf.apache.org/jaxws
http://cxf.apache.org/schemas/jaxws.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-4.2.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-4.2.xsd
http://www.springframework.org/schema/util
http://www.springframework.org/schema/util/spring-util-4.2.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-4.2.xsd
http://www.springframework.org/schema/task
http://www.springframework.org/schema/task/spring-task-4.2.xsd">
<context:component-scanbase-package="com" />
<task:annotation-driven />
<context:annotation-config/>
</beans>
实现类使用注解@Component作为注释
Java实例:
@Component
public class Cron {
@Scheduled(cron= " 0 0 * * * ?")
publicvoid runTaskPerHour() {
System.out.println("每小时的0分0秒执行一次: "+ new Date());
}
@Scheduled(fixedRate= 5000)
publicvoid runTaskPerFiveSecond() {
System.out.println("立即执行,每5秒执行一次: "+ new Date());
}
@Scheduled(fixedRate= 5000, initialDelay = 10000)
publicvoid runTaskPerFiveSecondDelay() {
System.out.println("延迟10秒执行,每5秒执行一次: "+ new Date());
}
}
下方参考ITEYE
Cron介绍:
一个cron表达式有至少6个有空格分隔的时间元素。
按顺序依次为
1.秒(0~59)
2.分钟(0~59)
3.小时(0~23)
4.天(月)(0~31,但是你需要考虑你月的天数)
5.月(0~11)
6.天(星期)(1~7 1=SUN 或 SUN,MON,TUE,WED,THU,FRI,SAT)
其中每个元素可以是一个值(如6),一个连续区间(9-12),一个间隔时间(8-18/4)(/表示每隔4小时),一个列表(1,3,5),通配符。由于"月份中的日期"和"星期中的日期"这两个元素互斥的,必须要对其中一个设置?.
"0 0 10,14,16 * * ?" 每天上午10点,下午2点,4点
"0 0/30 9-17 * * ?" 朝九晚五工作时间内每半小时
"0 0 12 ? * WED" 表示每个星期三中午12点
"0 0 12 * * ?" 每天中午12点触发
"0 15 10 ? * *" 每天上午10:15触发
"0 * 14 * * ?" 在每天下午2点到下午2:59期间的每1分钟触发
"0 0/5 14 * * ?" 在每天下午2点到下午2:55期间的每5分钟触发
"0 0/5 14,18 * * ?" 在每天下午2点到2:55期间和下午6点到6:55期间的每5分钟触发
"0 0-5 14 * * ?" 在每天下午2点到下午2:05期间的每1分钟触发
"0 10,44 14 ? 3 WED" 每年三月的星期三的下午2:10和2:44触发
"0 15 10 ? * MON-FRI" 周一至周五的上午10:15触发
"0 15 10 15 * ?" 每月15日上午10:15触发
"0 15 10 L * ?" 每月最后一日的上午10:15触发
转载于:https://blog.51cto.com/3418950/1891447
Spring @Scheduled关键字相关推荐
- Java Spring @Scheduled 定时任务crontab表达式设置
Java Spring @Scheduled 定时任务crontab表达式设置 1. Cron详解 2. 例子 参考 1. Cron详解 Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或 ...
- Spring @Scheduled
Spring @Scheduled是Spring计划任务的一种很简洁的实现.用来替代Quartz的方案. 要使用此特性,需要Spring3.2以上版本.用法: 1.在xml的配置中,需要加入: htt ...
- 使用轻量级Spring @Scheduled注解执行定时任务
WEB项目中需要加入一个定时执行任务,可以使用Quartz来实现,由于项目就一个定时任务,所以想简单点,不用去配置那些Quartz的配置文件,所以就采用了Spring @Scheduled注解来实现了 ...
- Spring @Scheduled 使用详解
一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第4天,点击查看活动详情. Spring 为任务调度和基于使用@Scheduled 注释的 cron 表达式的异步方法执行提供了极好的 ...
- Spring scheduled 执行 2 次原因
Spring scheduled 执行 2 次原因 Spring scheduled 定时任务 执行一次定时任务,日志输出出现两次,而且两次执行行数号不一致. Spring scheduled 定时任 ...
- Spring @Scheduled 多线程配置
Spring @Scheduled 多线程配置 环境 SpringBoot 2.0.2.RELEASE JDK8 两种方式实现 1.@Scheduled+@Async 测试代码: @SpringBoo ...
- 使用spring @Scheduled注解执行定时任务
在springMVC里使用spring的定时任务非常的简单,如下: (一)在xml里加入task的命名空间 xmlns 多加下面的内容 1 xmlns:task="http://www.sp ...
- spring @Scheduled 注解实现的定时任务 3步走
适用场景 1) Java自带的java.util.Timer类,这个类允许你调度一个java.util.TimerTask任务. 最早的时候就是这样写定时任务的. 2) 开源的第三方框架: Quar ...
- Spring @Scheduled定时任务调度配置的详解
Spring定时器中配置文件中一些配置信息,供各位参考及指正 创建一个包含定时器配置的Spring配置文件:如spring-taskTime.xml.以下均为配置信息: <?xml versio ...
最新文章
- 3D视觉工坊——一个有趣有料的星球
- Winform 绘制圆形的图片
- mysql sql模式_MySQL SQL模式特点汇总
- 二分图行列匹配--- hdu2119,hdu1498
- 跨系统远程登录用Linux系统远程登录windows7
- BZOJ 2434 Luogu P2414 [NOI2011]阿狸的打字机 (AC自动机、树状数组)
- TesCase-GUI(图形用户界面)测试
- JS笔记:检测客户端(引擎、浏览器、平台、操作系统)
- CF 1025C Plasticine zebra
- 【OpenGL4.0】GLSL-Flat Shading平面着色
- R7-11 h0096. 单词合并 (10 分)
- 主要编程教学语言的讨论
- 有36匹马,六个跑道。没有记时器等设备,用最少的比赛次数算出跑的最快的前3匹马
- 当迷茫在大学里泛滥成灾——李开复
- pycharm专业版使用
- Android 汉字转拼音工具类
- 布线时排阻(IC)管脚交换步骤
- Java--网络编程(利用TCP实现简单的双人聊天)
- A Comprehensive Survey on Graph Neural Networks--图神经网络综合研究
- 企业群发短信时为什么要找短信平台公司而不是直接找运营商发送
热门文章
- 公路建厂最短路径问题
- 求最小子数组之二维篇
- 清空SQL Server数据库中所有表数据的方法(转)
- Oracle INTERVAL DAY TO SECOND数据类型
- 楼市十大卖楼花招曝光〔转载〕
- SOA 案例研究:SOA 设计
- c 自动生成html报告,Pytest框架之 - Allure生成漂亮的HTML图形测试报告
- 【Groovy】Groovy 语言特点简介 ( 支持 Java 语法 | 支持 Java 虚拟机 | Groovy 语言是动态语言 | Groovy 扩展 JDK | 编译时元编程 )
- 【C 语言】字符串模型 ( strstr-while 模型 | 抽象函数模型 | 业务子函数接口定义要点 | 形参指针间接赋值 | 返回值状态 | 形参指针处理 | 形参指针判空 | 形参返回值 )
- 【Android 进程保活】应用进程拉活 ( 双进程守护 + JobScheduler 保活 | 成功率最高 | 推荐使用 )