3.Spring高级话题—3.计划任务

1.点睛
从Spring3.1开始,计划任务在Spring中的实现变得异常的简单。首先通过在配置类注解@EnableScheduling来开启对计划任务的支持,然后在要执行计划任务的方法上注解@Scheduled,声明这是一个计划任务。
Spring通过@Scheduled支持多种类型的计划任务,包含cron、fixDelay、fixRate等。
//@Scheduled(fixedDelay=ONE_Minute)
//@Scheduled(fixedRate=ONE_Minute)
//第一位,表示秒,取值0-59
//第二位,表示分,取值0-59
//第三位,表示小时,取值0-23
//第四位,日期天/日,取值1-31
//第五位,日期月份,取值1-12
//第六位,星期,取值1-7,星期一,星期二...,注:不是第1周,第二周的意思,另外:1表示星期天,2表示星期一
//第7位,年份,可以留空,取值1970-2099
//(*)星号:可以理解为每的意思,每秒,每分,每天,每月,每年...
//(?)问号:问号只能出现在日期和星期这两个位置,表示这个位置的值不确定,每天3点执行,所以第六位星期的位置,我们是不需要关注的,就是不确定的值。同时:日期和星期是两个相互排斥的元素,通过问号来表明不指定值。比如,1月10日,比如是星期1,如果在星期的位置是另指定星期二,就前后冲突矛盾了。
//(-)减号:表达一个范围,如在小时字段中使用“10-12”,则表示从10到12点,即10,11,12
//(,)逗号:表达一个列表值,如在星期字段中使用“1,2,4”,则表示星期一,星期二,星期四
//(/)斜杠:如:x/y,x是开始值,y是步长,比如在第一位(秒) 0/15就是,从0秒开始,每15秒,最后就是0,15,30,45,60 另:*/y,等同于0/y
2.示例
(1)计划任务执行类

通过@Scheduled声明该方法是计划任务,使用fixedRate属性每隔固定时间执行。
使用cron属性可按照指定时间执行,本例指的是每天11点28分执行;cron是UNIX和类UNIX(Linux)系统下的定时任务。
(2)配置类

通过@EnableScheduling注解开启对计划任务的支持。
(3)运行

结果

时间: 2024-10-25 22:02:34

3.Spring高级话题—3.计划任务的相关文章

【Spring】Spring高级话题-@Enable***注解的工作原理

转载请注明出处:http://blog.csdn.net/qq_26525215 本文源自[大学之旅_谙忆的博客] @EnableAspectJAutoProxy @EnableAspectJAutoProxy注解 激活Aspect自动代理 <aop:aspectj-autoproxy/> 开启对AspectJ自动代理的支持. 在用到AOP的自动代理的时候用,如果你理解了Java的动态代理,很容易的就会熟悉AOP的自动代理的. @EnableAsync @EnableAsync注解开启异步方法

【Spring】Spring高级话题-计划任务-@EnableScheduling

转载请注明出处:http://blog.csdn.net/qq_26525215 本文源自[大学之旅_谙忆的博客] 进行本示例的演示,需要先配置好Maven和Spring哦. 见: [Spring]基于IntelliJ IDEA搭建Maven 分析 要实现计划任务,首先通过在配置类注解@EnableScheduling来开启对计划任务的支持,然后在要执行计划任务的方法上注解@Scheduled,声明这是一个计划任务. Spring通过@Scheduled支持多种类型的计划任务,包含cron.fi

3.Spring高级话题—4.条件注解@Conditional

1.点睛在2.4节学到,通过活动的profile,我们可以获得不同的Bean.Spring4提供了一个更通用的基于条件的Bean的创建,即使用@Conditional注解.@Conditional根据满足某一个特定条件创建一个特定的Bean.比方说,当某一个jar包在一个类路径下的时候,自动配置一个或多个Bean:或者只有某个Bean被创建才会创建另外一个Bean.总的来说,就是根据特定条件来控制Bean的创建行为,这样我们可以利用这个特性进行一些自动的配置.在Spring Boot中将会大量应

3.Spring高级话题—1.Spring Aware

1.点睛Spring的依赖注入的最大亮点就是你所有的Bean对Spring容器的存在是没有意识的.即你可以将你的容器替换成别的容器,如Google Guice,这时Bean之间的耦合度很低.但是在实际项目中,你不可避免的要用到Spring容器本身的功能资源,这时你的Bean必须意识到Spring容器的存在,才能调用Spring所提供的资源,这就是所谓的Spring Aware.其实Spring Aware本来就是Spring设计用来框架内部使用的,若使用了Spring Aware,你的Bean将

【Spring】Spring高级话题-测试Spring项目

转载请注明出处:http://blog.csdn.net/qq_26525215 本文源自[大学之旅_谙忆的博客] 进行本示例的演示,需要先配置好Maven和Spring哦. 见: [Spring]基于IntelliJ IDEA搭建Maven 分析 测试是开发工作中不可缺少的部分. 单元测试只针对当前开发的类和方法进行测试,可以简单通过模拟依赖来实现,对运行环境没有依赖: 但是仅仅进行单元测试是不够的,它只能验证当前类或当前方法能否正常工作,而我们想要知道系统的各个部分组合在一起是否能正常工作,

【Spring】Spring高级话题-Spring Aware

转载请注明出处:http://blog.csdn.net/qq_26525215 本文源自[大学之旅_谙忆的博客] 分析 Spring的依赖注入的最大亮点就是你所有的Bean对Spring容器的存在是没有意识的. 也就是说,你可以把你的容器换成别的容器,如Google Guice,这时Bean之间的耦合度很低. 但是在实际项目中,基本上不可避免的要用到Spring容器本身的功能资源,这时你的Bean必须要意识到Spring容器的存在,才能调用Spring所提供的资源,这就是所谓的Spring A

【Spring】Spring高级话题-组合注解与元注解

转载请注明出处:http://blog.csdn.net/qq_26525215 本文源自[大学之旅_谙忆的博客] 进行本示例的演示,需要先配置好Maven和Spring哦. 见: [Spring]基于IntelliJ IDEA搭建Maven 分析 所谓的元注解: 其实就是可以注解到别的注解上的注解. 而被注解的注解我们就称之为组合注解.(仔细理解,可能有点绕) 组合注解同时具备元注解的功能! Spring的很多注解都可以作为元注解,而且Spring本身已经有很多组合注解. 组合注解的好处: 简

【Spring】Spring高级话题-条件注解-@Condition

转载请注明出处:http://blog.csdn.net/qq_26525215 本文源自[大学之旅_谙忆的博客] 进行本示例的演示,需要先配置好Maven和Spring哦. 见: [Spring]基于IntelliJ IDEA搭建Maven 分析 在前面的一篇博客中:[Spring]Spring常用配置-Profile 通过profile,我们可以获得不同的profile,我们可以获得不同的Bean.Spring4提供了一个更通用的基于条件的Bean的创建,即使用@Condition注解. @

C#中的线程(四)高级话题

Keywords:C# 线程Source:http://www.albahari.com/threading/Author: Joe AlbahariTranslator: Swanky WuPublished: http://www.cnblogs.com/txw1958/Download:http://www.albahari.info/threading/threading.pdf   第四部分:高级话题   非阻止同步 早些时候,我们讨论了非常简单的赋值和 更新一个字段时需要使用同步的例