`

spring3.0定时器

 
阅读更多

from《Spring in Action3》

基于注解的sping3定时器配置

1.首先要在application-context.xml里面配置好namespace 和schema,如下:

xmlns:task="http://www.springframework.org/schema/task"


http://www.springframework.org/schema/task
 http://www.springframework.org/schema/task/spring-task-3.0.xsd

 

2.在application-context.xml里面配置<task:annotation-driven/>,加下面一行就行:

<task:annotation-driven/>

 

<!-- The <task:annotation-driven/> element sets Spring up to automatically support
    scheduled and asynchronous methods. These methods are identified with the
    @Scheduled and @Async methods, respectively -->

 

3.在Bean里面的调度方法加注解@Scheduled,其中@Scheduled的attribute有三种:  

  (1)fixedRate:每隔多少毫秒执行一次该方法。如:

@Scheduled(fixedRate=2000)
public void scheduleMethod(){
	System.out.println("Hello world...");
}
	
 

 

  (2)fixedDelay:当一次方法执行完毕之后,延迟多少毫秒再执行该方法。 

  (3)cron:详细配置了该方法在什么时候执行。cron值是一个cron表达式。如:

@Scheduled(cron="0 0 0 * * SAT")
public voidarchiveOldSpittles(){
// ...
}
 

The value given to the cron attribute is a Cron expression. For those who aren’t so
well-versed in Cron expressions, let’s break down the cron attribute. The Cron expres-
sion is made up of six (or possibly seven) time elements, separated by spaces. In order
from left to right, the elements are defined as follows:
1 Seconds (0-59)
2 Minutes (0-59)
3 Hours (0-23)
4 Day of month (1-31)
5 Month (1-12 or JAN-DEC)
6 Day of week (1-7 or SUN-SAT)
7 Year (1970-2099)


一些cron表达式的例子:


Cron expression        What it means
0 0 10,14,16 * * ?       Every day at 10 a.m., 2 p.m., and 4 p.m.
0 0,15,30,45 * 1-30 * ?    Every 15 minutes on the first 30 days of the month
30 0 0 1 1 ? 2012       30 seconds after midnight on January 1, 2012
0 0 8-17 ? * MON-FRI     Every working hour of every business day


详细参考Spring reference document.

 

 

分享到:
评论

相关推荐

    Spring3.0 mvc 定时器及多线程任务demo

    在Spring 3.0 MVC框架中,定时器和多线程任务是两个关键概念,用于构建高效、自动化的Web应用程序。下面将详细讲解这两个概念及其在实际应用中的使用。 一、Spring 3.0 MVC定时器 在Spring 3.0中,我们可以使用...

    spring定时器3.0之前和3.0之后版本以及相应的项目实例

    在Spring 3.0之前的版本和3.0之后的版本中,定时器的使用方式和功能有所变化,这些变化主要涉及到API的更新和功能增强。 在Spring 2.5.6版本中,定时任务主要通过`org.springframework.scheduling.timer`包下的类来...

    spring定时器3.0之前和3.0之后以及相应的项目实例

    在Spring的早期版本中,定时任务主要依赖于`org.springframework.scheduling.timer`包,而在3.0版本之后,Spring引入了Quartz和Spring Task(也称为`org.springframework.scheduling.concurrent`)来提供更加强大的...

    spring3.0+quartz-1.6.0定时

    总结起来,"spring3.0+quartz-1.6.0定时"的实现涉及到Spring框架的定时任务支持和Quartz库的结合使用,通过Spring的配置管理Quartz调度器,定义任务和触发器,最后编写具体任务逻辑的Java类。这种组合在实际项目中...

    spring定时器

    基于注解的定时器是Spring 3.0版本后引入的功能,它简化了定时任务的开发过程,使得开发者能够更加专注于业务逻辑的编写。这种方式通常适用于较简单的定时任务场景。 **配置步骤**: - 引入必要的命名空间和...

    J2EE spring mvc mybatis bootstrap HTML5 后台框架 控制台 mysql版本_spring3.0

    【源码】mysql版本_spring3.0 系统模块 1. 组织管理:角色管理,分角色组和成员,有组权限和成员权限。 2. 系统用户:对各个基本的组会员增删改查,单发、群发邮件短信,导入导出excel表格,批量删除 3. 会员管理:...

    J2EE spring mvc mybatis bootstrap HTML5 后台框架 控制台 oracle版本_spring3.0

    【源码】oracle版本_spring3.0 系统模块 1. 组织管理:角色管理,分角色组和成员,有组权限和成员权限。 2. 系统用户:对各个基本的组会员增删改查,单发、群发邮件短信,导入导出excel表格,批量删除 3. 会员管理:...

    spring学习系列 -- 定时器三 两种定时器的比较

    Spring Task是在Spring 3.0版本中引入的,它提供了一种轻量级的解决方案来处理定时任务。Spring Task包括了`@Scheduled`注解,可以方便地在bean上标注以实现定时任务。此外,它还支持基于cron表达式的调度。相比于...

    spring 定时器

    Spring 3.0引入了`@Scheduled`注解,它可以直接添加到方法上,以实现定时任务的功能。Spring容器会根据该注解配置的时间表达式定期调用被注解的方法。例如: ```java @Component public class MyTask { @Scheduled...

    定时器集成包

    本文将深入探讨“定时器集成包”,特别是结合Spring 3.0框架与Quartz 1.0库的集成应用。Spring 3.0作为一款强大的Java企业级开发框架,提供了丰富的功能,而Quartz 1.0则是一款流行的任务调度库,能够方便地创建和...

    关于spring中定时器的使用教程

    在Spring框架中,定时任务的实现是通过Spring的定时器组件来完成的,这使得开发者无需深入了解底层定时机制,即可方便地实现定时任务。本文将详细介绍如何在Spring中使用XML配置来实现定时器。 首先,我们需要创建...

    pring定时器的使用

    这里我们将重点讨论Spring与Quartz的集成以及在Spring 2.5和3.0中的配置差异。 Quartz是一个功能强大的开源作业调度框架,它允许开发者创建、调度和执行任务。在Spring中集成Quartz,可以利用Spring的依赖注入和...

    使用java定时器的几种方式

    第三种方式是利用Spring 3.0以后版本中提供的task支持。Spring Task可以看作是轻量级的Quartz,它的优势在于使用简单。在Spring环境中,你可以通过注解来配置定时任务,比如使用@Scheduled注解来定义任务执行的频率...

    java Quartz定时器任务与Spring task定时的几种实现方法

    相比Quartz,Spring Task是Spring框架从3.0版本开始提供的轻量级定时任务解决方案。它的优点在于集成更简便,不需要额外的依赖库。Spring Task同样支持基于cron表达式的定时任务,通过`@Scheduled`注解即可实现。...

    web定时器组件

    2. javax.servlet.Timer接口:在Servlet 3.0及以上版本中引入,允许在Web应用中创建和管理定时任务。它依赖于Servlet容器,如Tomcat或Jetty,因此更适用于Web环境。 3. Quartz Scheduler:一个强大且灵活的开源任务...

    简单的后台管理系统框架

    定时器:Quartz 数据库连接池:Druid 页面交互:layuiAdmin 验证框架:hibernate-Validation 接口文档:Swagger 环境需求 JDK &gt;= 1.8 MySQL &gt;= 5.7 Maven &gt;= 3.0 redis &gt;= 6.0.6 minio 版本无要求

    Spring提供的三种定时任务机制及其比较

    当Spring容器加载了`SchedulerFactoryBean`后,Quartz定时器会启动,并根据配置加载相应的触发器(Trigger)和任务(Job)。下面是一段Spring配置示例: ```xml &lt;bean id="sfb" class="org.springframework....

Global site tag (gtag.js) - Google Analytics