`
yulon
  • 浏览: 118398 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

spring quartz定时器的简单配置和使用

阅读更多

第一步:在MyEclipse下建立一个项目Spring_Clock,导入相关jar包spring.jar commons-collections.jar

commons-lang.jar commons-logging.jar quartz.jar

 

第二步: 新建立一个业务bean-->cn.yulon.service.MessageService

package cn.yulon.service;

public class MessageService {
	int  i;
	public  void printLog(){
		i++;
		System.out.println("this is my timer:" +i);
	}
}

 

 

第三步:在Spring配置文件time-bean.xml,如下

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>	
	<!-- 第一步: 配置好要定时调用的业务类 -->
	<bean id="msgService" class="cn.yulon.service.MessageService" />
	<!-- 第二步: 定义好具体要使用类的哪一个业务方法 -->
	<bean id="workDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<!-- 目标bean -->
  		<property name="targetObject" ref="msgService"/>
  		<!-- 要执行目标bean的哪一个业务方法 -->
  		<property name="targetMethod" value="printLog"/>
  		<!-- 是否并发 -->
  		<property name="concurrent" value="false"/>
	</bean>
	<!-- 第三步: 定义好调用模式: 如每隔1秒钟调用一次或每天的哪个时间调用一次等 -->
	<bean id="msgTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
  		<property name="jobDetail" ref="workDetail"/>
  		<property name="cronExpression" value="0/1 * * * * ?"/>
	</bean>
	<!--第四步 把定义好的任务放到调度(Scheduler)工厂里面,注意这里的ref bean -->
    <bean  class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
  		<property name="triggers">
    		<list>
      			<ref bean="msgTrigger"/>
    		</list>
  		</property>
	</bean>
</beans>

 

在xml里配置值得关注的是<property name="cronExpression" value="0/1 * * * * ?"/>表示每隔一秒钟执行一次,例子如下:

         0 0 10,14,16 * * ? 每天上午10点,下午2点和下午4点
      0 0,15,30,45 * 1-10 * ? 每月前10天每隔15分钟
      30 0 0 1 1 ? 2012 在2012年1月1日午夜过30秒时
      0 0 8-5 ? * MON-FRI 每个工作日的工作时间
     
      - 区间
      * 通配符
      ? 你不想设置那个字段

 

第四步:新建测试类SpringTest

public class SpringTest {

 public static void main(String[] args) {
  
     ApplicationContext act = new ClassPathXmlApplicationContext("time-bean.xml");
   }

 
运行结果如下 :

this is my timer:1
this is my timer:2
this is my timer:3
this is my timer:4
this is my timer:5

 

应用场合: 如做一些定时提醒,日志定时备份等应用

4
0
分享到:
评论

相关推荐

    Spring中的Quartz配置-Spring-定时器-java定时器.doc

    Spring 中的 Quartz 配置-Spring 定时器-java 定时器 在 Spring 框架中,Quartz 是一个非常流行的开源作业调度器,可以实现任务的定时执行。在本篇文章中,我们将讨论如何在 Spring 中配置 Quartz,以实现 Java ...

    Spring Quartz 定时器示例(Web工程版)

    Spring Quartz 定时器示例(Web工程版),欢迎下载。

    定时器的配置文件(两种方式:springmvc自带定时,Quartz与spring结合的定时)

    在IT行业中,定时任务是许多系统不可...两者各有优劣,Spring内置定时器简单易用,适合轻量级的定时需求;而Quartz功能强大,适用于复杂的定时场景,但配置和管理相对复杂。根据项目需求选择合适的定时器方案至关重要。

    Spring Quartz定时器的jar包

    Spring Quartz定时器是Java开发中常用的一个任务调度框架,它结合了Spring框架的强大功能与Quartz的灵活性,使得开发者能够方便地在应用中实现定时任务。在这个压缩包中,包含了三个核心的jar文件:`quartz-all-...

    Spring Quartz定时器

    Spring Quartz定时器 Spring Quartz定时器 Spring Quartz定时器 Spring Quartz定时器

    SpringQuartz定时器的配置[参照].pdf

    Quartz本身是一个功能强大的任务调度框架,而Spring通过提供一些便利的类和工具,进一步简化了在Spring环境中使用Quartz的过程。 首先,为了使用Spring Quartz,你需要引入必要的依赖。在上述例子中,至少需要`...

    SpringQuartz定时器的配置[归类].pdf

    Spring通过提供FactoryBean类和一些辅助工具,使得在Spring容器中使用Quartz变得更加简单。 首先,要在项目中引入Spring和Quartz的相关依赖,通常需要`spring.jar`以及Quartz的jar包,如`quartz-all-1.6.6.jar`。...

    简单实现Spring Quartz定时器

    本篇文章将深入探讨如何在Spring框架中简单实现Quartz定时器,并结合源码和工具来帮助理解其工作原理。 首先,让我们了解Spring与Quartz的集成。Spring提供了对Quartz的全面支持,使得在Spring应用中配置和管理定时...

    Spring Quartz 定时器示例(Java工程版)

    - Spring通过提供`org.springframework.scheduling.quartz`包来简化Quartz的配置和管理。通过Spring,我们可以利用IoC(控制反转)和AOP(面向切面编程)的优势,使任务调度更加灵活和可维护。 3. **Spring配置...

    Quartz定时器介绍与简单使用

    ### Quartz定时器介绍与简单使用 #### 1.1 Quartz介绍 Quartz 是一款功能强大的开源任务调度框架,它完全采用 Java 编写而成。该框架允许开发人员以灵活的方式定义作业及其触发规则,从而实现对任务的定时调度。...

    spring和quartz的定时器的启动和停止例子

    4. **启动和停止定时器**:在Spring应用启动时,由于配置了`autoStartup="true"`,Quartz定时器会自动启动。若需手动控制,可以使用ApplicationContext获取Scheduler实例并调用其`start()`或`standby()`方法来启动或...

    Spring-quartz实现定时器(含代码)

    本文将深入探讨如何使用Spring整合Quartz来实现定时器,并提供相关代码示例。 首先,理解Spring框架。Spring是一个开源的Java平台,它提供了全面的企业级应用程序开发解决方案,包括依赖注入(DI)、面向切面编程...

    spring quartz定时器支持的jar包

    在Spring中集成Quartz,首先需要在项目的类路径下添加这三个jar包,然后通过Spring的配置文件来声明Quartz的相关bean。你可以定义`SchedulerFactoryBean`来创建调度器,`JobDetailBean`来定义作业,以及`...

    java Spring OpenSymphony的Quartz定时器的时间设置

    在Java Spring框架中,开发者有多种选择来实现定时任务的功能,其中最为流行的两种方式分别是使用Java自带的`Timer`类以及OpenSymphony的Quartz定时器。本文将重点探讨Quartz定时器的配置与使用,尤其是其时间设置的...

    使用spring的quartz定时器要用到的jar包

    首先,要使用Spring的Quartz定时器,你需要确保引入了以下核心的jar包: 1. `quartz.jar`:这是Quartz的核心库,包含了Quartz的调度器、作业、触发器等核心组件。 2. `spring-context-support.jar`:Spring框架提供...

    spring java 定时器 执行两次 quartz

    总的来说,Spring集成Quartz提供了灵活的定时任务解决方案,但同时需要注意避免配置错误和并发问题,以防止任务被执行多次。通过理解Quartz的工作原理和Spring的定时任务API,我们可以有效地管理定时任务,确保它们...

    spring boot集成quartz定时器

    总结,Spring Boot集成Quartz定时器能够方便地创建和管理定时任务,同时利用Spring的依赖注入,使得Job可以灵活地调用其他服务或组件。这种方式使得我们的任务更加模块化和易于维护。在实际开发中,根据项目需求,...

    spring定时器时间配置

    为了更好地理解Cron表达式的实际应用,下面提供了一个简单的Spring Boot项目示例,用于演示如何配置和使用Cron定时任务。 ```java import org.springframework.scheduling.annotation.Scheduled; import org.spring...

    spring quartz 表达式在线生成器

    但可以想象,如果包含了一个名为“demo”的项目,那么可能是一个示例工程,包含了使用Spring Quartz的配置和一个简单的定时任务示例,供读者下载并运行以加深理解。通常,这样的示例会包含Spring配置文件(如`...

Global site tag (gtag.js) - Google Analytics