spring对Timer(定时器)提供的支

原创 2013年12月04日 10:04:27

在做系统的时候,为了监听某个状态需要使用“监听器”,即每隔多长时间去“查询”一次,下面介绍的是spring对TimerTask接口的封装类

 

1、配置属性

<!-- 定义实现TimerTask接口的类  -->
        <bean id="myTimerTask" class="hb.timer.MyTimerTarsk"></bean>
        <!-- 定义spring自带类 ScheduledTimerTask,并将实现TimerTask的接口的类作为属性注入-->
        <bean id="stTarsk" class="org.springframework.scheduling.timer.ScheduledTimerTask">
        	<!-- 首次执行任务需要等待5秒  -->
        	<property name="delay" value="5000"></property>
        	<!-- 每隔两秒执行一次 -->
        	<property name="period" value="2000"></property>
        	<!-- 该属性对象继承了TimerTask接口,实现了run()方法 -->
        	<property name="timerTask" ref="myTimerTask"></property>
        </bean>
        <!-- 定义TimerFactoryBean,该类可以实现同时产生多个ScheduledTimerTask对象 -->
        <bean id="timerFactory" class="org.springframework.scheduling.timer.TimerFactoryBean">
        	<property name="scheduledTimerTasks">
        		<list>
        			<ref local="stTarsk"/>
        		</list>
        	</property>
        </bean>

 

2、实现TimerTask接口的实现方法

 

package hb.timer;

import java.util.TimerTask;
public class MyTimerTarsk extends TimerTask {

	@Override
	public void run() {
		System.out.println("1111111");
	}
}

 

3、测试类

package hb.scheduledTimerTask;

import java.util.Timer;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;

public class ScheduledTimerTaskTest {

	public static void main(String[] args)throws Exception {
		ApplicationContext ctx = new FileSystemXmlApplicationContext("applicationContext.xml");
		Timer t = (Timer)ctx.getBean("timerFactory");
	}
}
 

 

任务调度(一)——jdk自带的Timer

说到任务调度,大家可能会想到Quartz框架,但是jdk自带的简单任务调度工具类,反而了解的人并不是很多。我觉得如果你的业务相对简单的话,没必要非得用Quartz框架,使用Timer完全可以胜任的。简...
  • xiaoxian8023
  • xiaoxian8023
  • 2015年05月08日 02:13
  • 12270

定时器的实现、java定时器Timer和Quartz介绍与Spring中定时器的配置

工具/原料 spring-2.0.6.jar Spring框架的核心包 jta.jar 会用到包中的usertransaction,具体什么用此处暂时不论 ...
  • u011370143
  • u011370143
  • 2016年10月11日 16:37
  • 3339

在Listener(监听器)定时启动的TimerTask(定时任务)中使用Spring@Service注解的bean

1.有时候在项目中需要定时启动某个任务,对于这个需求,基于JavaEE规范,我们可以使用Listener与TimerTask来实现,代码如下:public class TestTaskListener...
  • Princeliu999
  • Princeliu999
  • 2017年02月20日 20:39
  • 1884

Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解

原创整理不易,转载请注明出处:Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解 代码下载地址:http://www.zuidaima.co...
  • gingerredjade
  • gingerredjade
  • 2015年12月24日 12:54
  • 5266

Timer和spring的Quartz两种定时器的区别。

这近闲暇无事,研究定时器timer和Quartz。也在网上看了一些例子,大多数要不是讲得很笼统就是就得很深奥。仔细想来定时器不就是相当于定时触发的装置,这样想来理解就更容易了。 第一个例子。time...
  • zlxdream815
  • zlxdream815
  • 2012年11月13日 12:01
  • 10998

spring 对 timer 的支持---实现简单的web中定时器操作

spring 对 timer 的支持 实现简单的web中定时器操作文章分类:Java编程一共分两个步骤:1.写一个java.util.Timer的子类,实现run方法。Java代码   1. pack...
  • kanaka10
  • kanaka10
  • 2011年05月22日 20:39
  • 431

有两种流行Spring定时器配置:Java的Timer类和OpenSymphony的Quartz。

有两种流行Spring定时器配置:Java的Timer类和OpenSymphony的Quartz。 1.Java Timer定时 首先继承java.util.TimerTask类实现run...
  • gaoqiao1988
  • gaoqiao1988
  • 2014年04月19日 17:55
  • 556

Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解

Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解 源代码下载地址:http://www.zuidaima.com/share/17726484451...
  • yaerfeng
  • yaerfeng
  • 2016年03月30日 09:45
  • 667

Timer和spring的Quartz两种定时器的区别。

这近闲暇无事,研究定时器timer和Quartz。也在网上看了一些例子,大多数要不是讲得很笼统就是就得很深奥。仔细想来定时器不就是相当于定时触发的装置,这样想来理解就更容易了。 第一个例子。time...
  • zjliwhf
  • zjliwhf
  • 2017年03月21日 10:12
  • 238

spring+quartz定时器任务调度(时间配置比timer灵活的多)

spring 触发器(调度器):  1,定义一个定时器实现 org.quartz.Job 接口,实现execut()方法;  2,在配置文件中配置定时器 bean      配置触发器,在触发...
  • PZ0605
  • PZ0605
  • 2014年11月20日 10:57
  • 1338
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:spring对Timer(定时器)提供的支
举报原因:
原因补充:

(最多只允许输入30个字)