Spring3中加强了注解的使用,其中计划任务也得到了增强,现在创建一个计划任务只需要两步就完成了:
1.创建一个Java类,添加一个无参无返回值的方法,在方法上用@Scheduled注解修饰一下;
2.在Spring配置文件中添加三个<task:**** />节点;
最后说明一下,第一步创建的Java类要成为Spring可管理的Bean,可以直接写在XML里,也可以@Component一下。
计划任务类:
/**
* com.zywang.spring.task.SpringTaskDemo.java
* @author ZYWANG 2011-3-9
*/
package com.zywang.spring.task;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
/**
* Spring3 @Scheduled 演示
* @author ZYWANG 2011-3-9
*/
@Component
public class SpringTaskDemo {
@Scheduled(fixedDelay = 5000)
void doSomethingWithDelay(){
System.out.println("I'm doing with delay now!");
}
@Scheduled(fixedRate = 5000)
void doSomethingWithRate(){
System.out.println("I'm doing with rate now!");
}
@Scheduled(cron = "0/5 * * * * *")
void doSomethingWith(){
System.out.println("I'm doing with cron now!");
}
}
Spring配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:task="http://www.springframework.org/schema/task"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.0.xsd">
<!-- Enables the Spring Task @Scheduled programming model -->
<task:executor id="executor" pool-size="5" />
<task:scheduler id="scheduler" pool-size="10" />
<task:annotation-driven executor="executor" scheduler="scheduler" />
</beans>
转自http://zywang.iteye.com/blog/949123
分享到:
相关推荐
Spring定时器,也被称为Spring Boot的定时任务,是Spring框架中的一个强大功能,它允许开发者在应用程序中安排周期性任务的执行。这个功能基于Java的`java.util.concurrent.ScheduledExecutorService`,并通过Spring...
Spring定时器,也称为Spring的`@Scheduled`注解和`TaskScheduler`接口,提供了更强大且灵活的定时任务管理。Spring使用`@Configuration`类配合`@EnableScheduling`注解开启定时任务功能。在该配置类中,你可以定义一...
本文将深入探讨Spring提供的两种定时器——`Quartz`和`Spring Task`,并进行对比分析。 首先,让我们了解`Quartz`。Quartz是一个开源的作业调度框架,它允许应用程序在指定的时间执行任务。Quartz提供了丰富的API,...
这个"spring定时器简单的demo"应该包含了一个使用Spring Task实现简单定时任务的例子。 首先,Spring Task的配置通常在`applicationContext.xml`文件中进行。在这个配置文件中,我们需要启用Spring的Task执行器,这...
以上内容详细介绍了Spring定时器的相关知识点,包括其基本概念、不同类型的定时器以及实际应用中的配置和实现方法。通过理解和掌握这些知识,开发者可以更高效地利用Spring框架来实现复杂的定时任务功能。
在Spring框架中,有两种主要的方法来实现定时任务:Spring自带的`@Scheduled`注解和引入第三方库Quartz。这两种方法都可以帮助开发者在特定的时间点执行任务,为应用程序添加计划任务的能力。 首先,我们来看看使用...
首先,理解Spring定时器的基础概念。Spring提供了两种定时任务框架:`java.util.Timer`和`@Scheduled`注解。然而,对于复杂的企业级应用,Quartz更具有优势,因为它支持集群、灵活的调度策略和丰富的API。 1. **...
下面我们将详细探讨Spring定时器的使用方法和相关知识点。 1. **什么是Spring Task(Spring定时任务)**: Spring Task是Spring Framework的一部分,提供了一套完整的定时任务解决方案。它支持基于cron表达式或者...
### SPRING定时器使用说明详解 在现代软件开发中,定时任务执行是常见的需求之一,尤其是在后台服务中,如数据同步、定期清理缓存、发送提醒邮件等场景。Spring框架,作为Java领域中最受欢迎的企业级应用开发框架之...
但是,在 Spring MVC 中,我们通常会使用 `@Scheduled` 注解来简化定时任务的配置。 **创建定时任务** 1. **定义定时任务类**:创建一个包含 `@Component` 注解的类,这样 Spring 可以将它纳入管理。然后在需要...
而Spring的定时任务功能,主要是由`@Scheduled`注解和`TaskScheduler`接口提供的,可以让我们轻松地创建计划任务,执行周期性的后台作业。 Spring AOP的核心概念包括切面(Aspect)、连接点(Join Point)、通知...
在标题"spring定时器的包和配置文件"中,我们讨论的核心是Spring如何配置和使用定时器来自动化执行特定的任务。 首先,让我们了解Spring定时任务的基本概念。Spring定时器基于Java的`java.util.Timer`和`java.util....
下面将详细阐述Spring定时器的工作原理、配置方法以及使用场景。 1. **工作原理**: Spring定时器基于`java.util.concurrent.ScheduledExecutorService`接口,它是一个线程池服务,可以用来安排在未来某个时间点...
下面是一个完整的Spring定时器示例: 1. **配置Spring配置类** 首先,我们需要创建一个配置类,启用定时任务支持,并提供一个`ThreadPoolTaskScheduler`实例,用于调度任务。 ```java @Configuration @...
`@Scheduled`是Spring Schedule提供的一个注解,可以直接在方法上使用,用来标记这个方法为定时任务。下面是一个简单的例子: ```java import org.springframework.scheduling.annotation.Scheduled; import org....
本篇将详细介绍如何配置和使用Spring的定时器来定时调用任务。 首先,让我们了解Spring Task的核心组件。`TaskExecutor`接口用于异步执行任务,而`TaskScheduler`接口则用于调度定时任务。在这个场景中,我们将重点...
本示例工程是一个基于Maven的Web项目,展示了如何通过XML配置和注解两种方式来设置Spring定时器,并且还涉及到使用注解配置线程池。 首先,我们来探讨XML配置方式。在Spring的配置文件(如`applicationContext.xml`...
除了使用`TaskScheduler`,Spring还提供了基于`@Scheduled`注解的定时任务方式。只需在方法上添加`@Scheduled`,并提供定时规则,Spring就会自动管理任务的执行: ```java @Component public class ScheduledTasks ...
Spring定时器Quartz是Java应用中广泛使用的任务调度框架,它允许开发者定义并执行复杂的定时任务。这篇博客可能探讨了如何在Spring框架中集成Quartz,以实现灵活、可扩展的任务调度。 Quartz是一个开源的作业调度...