spring定时器实现方式1:Java的Timer类
1.继承java.util.TimerTask类实现run方法
package com.tgwoo.ctspmt.test;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.TimerTask;
public class EmailReportTask extends TimerTask {
@Override
public void run() {
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(sdf.format(date) + "{*****继承TimerTask类,实现run方法,此处定时需要处理的业务*****}");
//处理相关业务
}
}
(如下配置到applicationContext.xml中)
2.配置需要运行的类
<bean id="reportTimerTask" class="com.tgwoo.ctspmt.test.EmailReportTask"></bean>
3.配置Spring定时器
<bean id="scheduleReportTask" class="org.springframework.scheduling.timer.ScheduledTimerTask">
<property name="timerTask" ref="reportTimerTask"></property>
<property name="period"><value>15000</value></property>
<property name="delay"><value>10000</value></property>
</bean>
注:timerTask属性告诉ScheduledTimerTask运行哪个bean, period属性每间隔(15000毫秒)运行一次, delay属性延迟启动(10000毫秒)Spring定时器
4.启动Spring定时器
<bean id="scheduleReportFactory" class="org.springframework.scheduling.timer.TimerFactoryBean">
<property name="scheduledTimerTasks">
<list><ref bean="scheduleReportTask" /></list>
</property>
</bean>
注:scheduledTimerTasks里显示一个需要启动的定时器任务的列表。
5.启动tomcat6服务后,Timer运行正常(在加载spring成功后,延迟10秒,每隔15秒运行定时器一次)
[2011-12-22 10:18:37,861][INFO][org.springframework.web.servlet.DispatcherServlet][4096]{FrameworkServlet 'springMVC': initialization started}
[2011-12-22 10:18:37,861][INFO][org.springframework.web.context.support.XmlWebApplicationContext][4096]{Refreshing WebApplicationContext for namespace 'springMVC-servlet': startup date [Thu Dec 22 10:18:37 CST 2011]; parent: Root WebApplicationContext}
[2011-12-22 10:18:37,861][INFO][org.springframework.beans.factory.xml.XmlBeanDefinitionReader][4096]{Loading XML bean definitions from ServletContext resource [/WEB-INF/springMVC-servlet.xml]}
.........
.........
2011-12-22 10:18:39 org.apache.catalina.startup.Catalina start
信息: Server startup in 6753 ms
2011-12-22 10:18:47{*****继承TimerTask类,实现run方法,此处定时需要处理的业务*****}
2011-12-22 10:19:02{*****继承TimerTask类,实现run方法,此处定时需要处理的业务*****}
2011-12-22 10:19:17{*****继承TimerTask类,实现run方法,此处定时需要处理的业务*****}
2011-12-22 10:19:32{*****继承TimerTask类,实现run方法,此处定时需要处理的业务*****}
2011-12-22 10:19:47{*****继承TimerTask类,实现run方法,此处定时需要处理的业务*****}
2011-12-22 10:20:02{*****继承TimerTask类,实现run方法,此处定时需要处理的业务*****}
..........
..........
分享到:
相关推荐
Spring两种定时器实例配置:Java的TimerTask类和OpenSymphony的Quartz。包含5种配置方式:timer普通定时器、timer特定方法定时器、quartz简单定时器、quartz精确定时器、quartz特定方法定时器。简单实用,一看就会。
Spring框架提供了两种方式来处理定时任务:Java内置的`Timer`类和第三方库OpenSymphony的Quartz。下面将详细介绍这两种实现方式。 ### 1. Java `Timer` 类 Java `java.util.Timer` 类是Java标准库中的一个轻量级...
Java定时器和Spring定时器是Java开发中用于执行周期性任务的重要工具,它们在系统维护、数据同步、报告生成等场景中发挥着关键作用。本文将深入探讨这两个概念,以及如何在Spring框架中配置和使用定时器。 首先,...
Spring 定时器两种实现方式 Spring 定时器是 Spring 框架中的一种组件,用于实现定时任务的执行。...Spring 定时器提供了两种实现方式,Java Timer 定时和 Quartz 定时器,开发者可以根据实际情况选择合适的实现方式。
标题与描述均提到了“Java_Timer定时器实例_Spring实例”,这表明文章主要讨论的是如何在Java中使用Timer类创建定时任务,并将其整合到Spring框架中。以下是对该主题的详细解析: ### Java中的Timer定时器 #### ...
在Spring框架中,实现定时任务有两种主流方式:使用`java.util.Timer`类或集成第三方库如Quartz。这两种方法各有优势: - **Java Timer**:简单易用,适合简单的定时任务需求。 - **Quartz**:功能强大且灵活,支持...
【Spring定时器】 Spring框架提供了更高级的定时任务管理方式,比如 `org.springframework.scheduling.TaskScheduler` 和 `org.springframework.scheduling.annotation.Scheduled` 注解。通过使用Spring的定时器,...
首先,我们来看Spring定时器。Spring使用的是Quartz库来实现定时任务管理。在给出的例子中,可以看到配置文件中定义了几个关键的bean: 1. `zhang`:这是被调度的任务bean,它包含了实际执行定时任务的方法。在这个...
Spring定时器基于Java的`java.util.Timer`和`java.util.TimerTask`,但更进一步,它支持Quartz和SimpleScheduler这两种强大的定时任务库。Quartz是一个开源的作业调度框架,而SimpleScheduler则内置在Spring中,适用...
在Spring框架中,定时任务的实现通常有多种方式,这里主要讨论的是两种常见的方式:Java Timer和Quartz定时器。这两种方法都有其特点和适用场景,开发者可以根据项目需求来选择。 1. **Java Timer定时器** Java ...
综上所述,Java定时器在不同场景下有多种实现方式,包括Java基础库中的`Timer`和`ScheduledExecutorService`,以及在Java Web和Spring框架中的高级解决方案。选择哪种方式取决于具体的需求,如并发控制、任务粒度、...
下面是一个完整的Spring定时器示例: 1. **配置Spring配置类** 首先,我们需要创建一个配置类,启用定时任务支持,并提供一个`ThreadPoolTaskScheduler`实例,用于调度任务。 ```java @Configuration @...
本文将重点探讨如何利用Spring框架内部的`Timer`类及相关组件实现定时器。 #### Spring 定时器基础知识 Spring中的定时任务主要通过`ScheduledTimerTask`和`ScheduledTimerTask`等类来实现。这些类都是基于Java...
首先,Java定时器主要由`java.util.Timer`类和`java.util.TimerTask`类组成。`Timer`类是定时器,用于调度任务的执行,而`TimerTask`是可被调度的任务,继承自`Runnable`接口。然而,这种方式并不适合复杂的多线程...
在Java编程语言中,`Timer`类和Spring框架的定时任务是两种常见的实现定时执行任务的方式。本篇文章将深入探讨这两个主题,旨在帮助初学者理解它们的工作原理以及如何在实际项目中应用。 首先,让我们来看一下Java...
Java定时器,全称为Java Timer类,是Java.util包下的一个关键组件,主要用于安排在未来某个时间点或周期性地执行任务。它为Java应用程序提供了定时调度功能,使得开发者可以安排任务在特定的时间点运行,或者按照...
在Java中实现定时任务有多种方式,...总之,Java中实现定时任务的三种主要方式各有特点,从简单的Timer到功能强大的Quartz再到易用的Spring Task,开发者可以根据自己的具体需求和场景,选择合适的定时任务实现方式。
在Java的Spring框架中,定时任务的实现有多种方式,其中两种常见的实现是基于Java的`Timer`类和OpenSymphony的`Quartz`库。这两种定时器在Spring中的使用和配置有所不同,各有优缺点,适合不同的应用场景。 1. **...
Spring定时器,全称为Spring Framework中的Task Execution and Scheduling模块,是Spring提供的一个强大而灵活的任务...在实际项目中,根据需求选择合适的方式来使用Spring定时器,能够大大提升应用的效率和可维护性。
在Spring 2.5.6版本中,定时任务主要基于`java.util.Timer`和`java.util.TimerTask`类,这是一个简单的定时器API,适合一些基本的定时需求。要使用Spring的定时器功能,首先需要配置一个`TimerTask`实现,然后在...