备注:本示例中我们使用的是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关键字相关推荐

  1. Java Spring @Scheduled 定时任务crontab表达式设置

    Java Spring @Scheduled 定时任务crontab表达式设置 1. Cron详解 2. 例子 参考 1. Cron详解 Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或 ...

  2. Spring @Scheduled

    Spring @Scheduled是Spring计划任务的一种很简洁的实现.用来替代Quartz的方案. 要使用此特性,需要Spring3.2以上版本.用法: 1.在xml的配置中,需要加入: htt ...

  3. 使用轻量级Spring @Scheduled注解执行定时任务

    WEB项目中需要加入一个定时执行任务,可以使用Quartz来实现,由于项目就一个定时任务,所以想简单点,不用去配置那些Quartz的配置文件,所以就采用了Spring @Scheduled注解来实现了 ...

  4. Spring @Scheduled 使用详解

    一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第4天,点击查看活动详情. Spring 为任务调度和基于使用@Scheduled 注释的 cron 表达式的异步方法执行提供了极好的 ...

  5. Spring scheduled 执行 2 次原因

    Spring scheduled 执行 2 次原因 Spring scheduled 定时任务 执行一次定时任务,日志输出出现两次,而且两次执行行数号不一致. Spring scheduled 定时任 ...

  6. Spring @Scheduled 多线程配置

    Spring @Scheduled 多线程配置 环境 SpringBoot 2.0.2.RELEASE JDK8 两种方式实现 1.@Scheduled+@Async 测试代码: @SpringBoo ...

  7. 使用spring @Scheduled注解执行定时任务

    在springMVC里使用spring的定时任务非常的简单,如下: (一)在xml里加入task的命名空间 xmlns 多加下面的内容 1 xmlns:task="http://www.sp ...

  8. spring @Scheduled 注解实现的定时任务 3步走

    适用场景 1) Java自带的java.util.Timer类,这个类允许你调度一个java.util.TimerTask任务. 最早的时候就是这样写定时任务的.  2) 开源的第三方框架: Quar ...

  9. Spring @Scheduled定时任务调度配置的详解

    Spring定时器中配置文件中一些配置信息,供各位参考及指正 创建一个包含定时器配置的Spring配置文件:如spring-taskTime.xml.以下均为配置信息: <?xml versio ...

最新文章

  1. 3D视觉工坊——一个有趣有料的星球
  2. Winform 绘制圆形的图片
  3. mysql sql模式_MySQL SQL模式特点汇总
  4. 二分图行列匹配--- hdu2119,hdu1498
  5. 跨系统远程登录用Linux系统远程登录windows7
  6. BZOJ 2434 Luogu P2414 [NOI2011]阿狸的打字机 (AC自动机、树状数组)
  7. TesCase-GUI(图形用户界面)测试
  8. JS笔记:检测客户端(引擎、浏览器、平台、操作系统)
  9. CF 1025C Plasticine zebra
  10. 【OpenGL4.0】GLSL-Flat Shading平面着色
  11. R7-11 h0096. 单词合并 (10 分)
  12. 主要编程教学语言的讨论
  13. 有36匹马,六个跑道。没有记时器等设备,用最少的比赛次数算出跑的最快的前3匹马
  14. 当迷茫在大学里泛滥成灾——李开复
  15. pycharm专业版使用
  16. Android 汉字转拼音工具类
  17. 布线时排阻(IC)管脚交换步骤
  18. Java--网络编程(利用TCP实现简单的双人聊天)
  19. A Comprehensive Survey on Graph Neural Networks--图神经网络综合研究
  20. 企业群发短信时为什么要找短信平台公司而不是直接找运营商发送

热门文章

  1. 公路建厂最短路径问题
  2. 求最小子数组之二维篇
  3. 清空SQL Server数据库中所有表数据的方法(转)
  4. Oracle INTERVAL DAY TO SECOND数据类型
  5. 楼市十大卖楼花招曝光〔转载〕
  6. SOA 案例研究:SOA 设计
  7. c 自动生成html报告,Pytest框架之 - Allure生成漂亮的HTML图形测试报告
  8. 【Groovy】Groovy 语言特点简介 ( 支持 Java 语法 | 支持 Java 虚拟机 | Groovy 语言是动态语言 | Groovy 扩展 JDK | 编译时元编程 )
  9. 【C 语言】字符串模型 ( strstr-while 模型 | 抽象函数模型 | 业务子函数接口定义要点 | 形参指针间接赋值 | 返回值状态 | 形参指针处理 | 形参指针判空 | 形参返回值 )
  10. 【Android 进程保活】应用进程拉活 ( 双进程守护 + JobScheduler 保活 | 成功率最高 | 推荐使用 )