使用spring @Scheduled注解运行定时任务、
曾经框架使用quartz框架运行定时调度问题、
老大说这配置太麻烦、每一个调度都须要多加在spring的配置中、
能不能降低配置的量从而提高开发效率、
近期看了看spring的 scheduled的使用注解的方式进行调度、
感觉非常方便、起码配置的东西少了非常多、
所以留下来以备忘了、
首先要配置我们的spring.xml
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-3.1.xsd
最后是我们的task任务扫描注解
<task:annotation-driven/>
我的配置扫描位置是:
<context:annotation-config/>
<bean class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor"/>
<context:component-scan base-package="com.test"/>
扫描的是com.test这种包下的内容、
以下须要接口和实现(我的这几个java文件都是com.test的包下的、)
public interface IMyTestService {
public void myTest();
}
@Component //import org.springframework.stereotype.Component;
public class MyTestServiceImpl implements IMyTestService {
@Scheduled(cron="0/5 * * * * ? ") //每5秒运行一次
@Override
public void myTest(){
System.out.println("进入測试");
}
}
运行后控制台就会打印出 进入測试 了
须要注意的几点:
1、spring的@Scheduled注解 须要写在实现上、
2、 定时器的任务方法不能有返回值(假设有返回值,spring初始化的时候会告诉你有个错误、须要设定一个proxytargetclass的某个值为true、详细就去百度google吧)
3、实现类上要有组件的注解@Component
剩下的就是corn表达式了、详细使用以及參数请百度google、
以下仅仅例出几个式子
CRON表达式 含义
"0 0 12 * * ?" 每天中午十二点触发
"0 15 10 ? * *" 每天早上10:15触发
"0 15 10 * * ?" 每天早上10:15触发
"0 15 10 * * ? *" 每天早上10:15触发
"0 15 10 * * ? 2005" 2005年的每天早上10:15触发
"0 * 14 * * ?" 每天从下午2点開始到2点59分每分钟一次触发
"0 0/5 14 * * ?" 每天从下午2点開始到2:55分结束每5分钟一次触发
"0 0/5 14,18 * * ?" 每天的下午2点至2:55和6点至6点55分两个时间段内每5分钟一次触发
"0 0-5 14 * * ?" 每天14:00至14:05每分钟一次触发
"0 10,44 14 ? 3 WED" 三月的每周三的14:10和14:44触发
"0 15 10 ? * MON-FRI" 每一个周一、周二、周三、周四、周五的10:15触发
使用spring @Scheduled注解运行定时任务、的更多相关文章
- 使用轻量级Spring @Scheduled注解执行定时任务
WEB项目中需要加入一个定时执行任务,可以使用Quartz来实现,由于项目就一个定时任务,所以想简单点,不用去配置那些Quartz的配置文件,所以就采用了Spring @Scheduled注解来实现了 ...
- spring @Scheduled注解执行定时任务
以前框架使用quartz框架执行定时调度问题. 这配置太麻烦.每个调度都需要多加在spring的配置中. 能不能减少配置的量从而提高开发效率. 最近看了看spring的 scheduled的使用注解的 ...
- quartz 框架定时任务,使用spring @Scheduled注解执行定时任务
配置quartz 在spring中需要三个jar包: quartz-1.6.5.jar.commons-collections-3.2.jar.commons-logging-1.1.jar 首先要配 ...
- 使用spring @Scheduled注解执行定时任务
以前框架使用quartz框架执行定时调度问题. 老大说这配置太麻烦.每个调度都需要多加在spring的配置中. 能不能减少配置的量从而提高开发效率. 最近看了看spring的 scheduled的使用 ...
- 【转】使用spring @Scheduled注解执行定时任务
http://blog.csdn.net/sd4000784/article/details/7745947 以前框架使用quartz框架执行定时调度问题. 老大说这配置太麻烦.每个调度都需要多加在s ...
- 使用spring @Scheduled注解执行定时任务、
http://blog.csdn.net/sd4000784/article/details/7745947,留下来备用.
- 定时任务 spring @Scheduled注解
使用spring @Scheduled注解执行定时任务: 运行!!! 关于Cron表达式(转载) 表达式网站生成: http://cron.qqe2.com/ 直接点击 cronExpression ...
- Spring 的@Scheduled注解实现定时任务运行和调度
Spring 的@Scheduled注解实现定时任务运行和调度 首先要配置我们的spring.xml --- 即spring的主配置文件(有的项目中叫做applicationContext.xm ...
- Spring Boot 使用 @Scheduled 注解创建定时任务
在项目开发中我们经常需要一些定时任务来处理一些特殊的任务,比如定时检查订单的状态.定时同步数据等等. 在 Spring Boot 中使用 @Scheduled 注解创建定时任务非常简单,只需要两步操作 ...
随机推荐
- Android学习手记(1) Activity跳转
新建Project,并将主页命名为MainActivity. 创建一个Activity 在App上“右键->New->Activity->Empty Activity”, 将新建的A ...
- linux 第三天11讲
1.linux下的shell 查看目前使用的是哪种shell env [该命令可以显示当前操作系统的环境变量] env | more chsh -s 输入新的shell 如:/bin/csh shel ...
- C#中从元数据
元数据相对我们来说通俗点 就是你引用里面引用的那些dll比如 对Thread 按F12 不就是提示从元数据,..
- zepto源码研究 - zepto.js-3 (常用的工具)
pluck: /** * 根据是否存在此属性来获取当前集合,返回一组属性值 * @param property * @returns {*} */ pluck: function(property){ ...
- Canvas前端游戏开发——FlappyBird详解
一直想自己做点小东西,直到最近看了本<HTML5游戏开发>,才了解游戏开发中的一点点入门知识. 本篇就针对学习的几个样例,自己动手实践,做了个FlappyBird,源码共享在度盘;也可以参 ...
- str_repeat() 函数
<?php echo str_repeat(".",13);//重复几次 ?>
- LRU缓存算法 - C++版
LRU是Least Recently Used的缩写,意思是最近最少使用,它是一种Cache替换算法. 实现思路: hashtable + 双向链表 时间复杂度: 插入,查找,删除:O(1) 空间使用 ...
- 无线通信技术协议-Zigbee 3.0
物联网的无线通信技术有:短距离的无线局域网通信技术和长距离的无线广域网通信技术. 短距离局域网通信技术有Zigbee.Wi-Fi.Bluetooth.Z-wave.6LoWPAN等. 长距离广域网通信 ...
- 转: pthread_create()
pthread_create函数 原型:int pthread_create((pthread_t *thread, pthread_attr_t *attr, void *(*start ...
- akka简单示例-2
手动敲了一遍计算pi的示例:http://www.gtan.com/akka_doc/intro/getting-started-first-scala.html 有个笔误,花了半个小时定位. [To ...