spring3.0只支持quartz2.0以下版本!
<!-- 定时器 --> <bean id="timer" class="com.steven.money.service.timer.CacheUpdateTimer"></bean> <!-- 定义目标bean和bean中的方法 --> <bean id="Job" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> <property name="targetObject"> <ref local="timer" /> </property> <property name="targetMethod"> <!-- 要执行的方法名称 --> <value>startTimer</value> </property> <!-- 如果第一次定时任务未执行完成,第二次定时任务来时:false:不执行第二次任务,true:执行第二次任务 --> <property name="concurrent" value="false"></property> </bean> <!--定义触发的时间 --> <bean id="cron" class="org.springframework.scheduling.quartz.CronTriggerBean"> <property name="jobDetail"> <ref bean="Job" /> </property> <property name="cronExpression"> <!-- 每天3点更新缓存 --> <value>0 0 3 * * ?</value> </property> </bean> <!-- 管理触发器 --><!-- 如果将lazy-init='false'那么容器启动就会执行调度程序 --> <bean autowire="no" lazy-init="false" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers"> <list> <ref local="cron" /> </list> </property> </bean>
以下来源http://jingyan.baidu.com/article/0f5fb099cc244d6d8234ea6b.html
字段 允许值 允许的特殊字符
秒 0-59 , - * /
分 0-59 , - * /
小时 0-23 , - * /
日期 1-31 , - * ? / L W C
月份 1-12 或者 JAN-DEC , - * /
星期 1-7 或者 SUN-SAT , - * ? / L C #
年(可选) 留空, 1970-2099 , - * /
表达式意义
"0 0 12 * * ?" 每天中午12点触发
"0 15 10 ? * *" 每天上午10:15触发
"0 15 10 * * ?" 每天上午10:15触发
"0 15 10 * * ? *" 每天上午10:15触发
"0 15 10 * * ? 2005" 2005年的每天上午10:15触发
"0 * 14 * * ?" 在每天下午2点到下午2:59期间的每1分钟触发
"0 0/5 14 * * ?" 在每天下午2点到下午2:55期间的每5分钟触发
"0 0/5 14,18 * * ?" 在每天下午2点到2:55期间和下午6点到6:55期间的每5分钟触发
"0 0-5 14 * * ?" 在每天下午2点到下午2:05期间的每1分钟触发
"0 10,44 14 ? 3 WED" 每年三月的星期三的下午2:10和2:44触发
"0 15 10 ? * MON-FRI" 周一至周五的上午10:15触发
"0 15 10 15 * ?" 每月15日上午10:15触发
"0 15 10 L * ?" 每月最后一日的上午10:15触发
"0 15 10 ? * 6L" 每月的最后一个星期五上午10:15触发
"0 15 10 ? * 6L 2002-2005" 2002年至2005年的每月的最后一个星期五上午10:15触发
"0 15 10 ? * 6#3" 每月的第三个星期五上午10:15触发
每天早上6点
0 6 * * *
每两个小时
0 */2 * * *
晚上11点到早上8点之间每两个小时,早上八点
0 23-7/2,8 * * *
每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点
0 11 4 * 1-3
1月1日早上4点
0 4 1 1 *
有些子表达式能包含一些范围或列表
例如:子表达式(天(星期))可以为 “MON-FRI”,“MON,WED,FRI”,“MON-WED,SAT”
“*”:字符代表所有可能的值
因此,“*”在子表达式(月)里表示每个月的含义,“*”在子表达式(天(星期))表示星期的每一天
“/”:字符用来指定数值的增量
例如:在子表达式(分钟)里的“0/15”表示从第0分钟开始,每15分钟 ;
在子表达式(分钟)里的“3/20”表示从第3分钟开始,每20分钟(它和“3,23,43”)的含义一样
“?”:字符仅被用于天(月)和天(星期)两个子表达式,表示不指定值
当2个子表达式其中之一被指定了值以后,为了避免冲突,需要将另一个子表达式的值设为“?”
“L”: 字符仅被用于天(月)和天(星期)两个子表达式,它是单词“last”的缩写
但是它在两个子表达式里的含义是不同的。
在天(月)子表达式中,“L”表示一个月的最后一天 ,
在天(星期)自表达式中,“L”表示一个星期的最后一天,也就是SAT
如果在“L”前有具体的内容,它就具有其他的含义了
例如:“6L”表示这个月的倒数第6天,“FRIL”表示这个月的最后一个星期五
注意:在使用“L”参数时,不要指定列表或范围,因为这会导致问题
相关推荐
Spring Quartz 定时器示例(Web工程版),欢迎下载。
Spring Quartz定时器是Java开发中常用的一个任务调度框架,它结合了Spring框架的强大功能与Quartz的灵活性,使得开发者能够方便地在应用中实现定时任务。在这个压缩包中,包含了三个核心的jar文件:`quartz-all-...
Spring Quartz定时器 Spring Quartz定时器 Spring Quartz定时器 Spring Quartz定时器
Spring 中的 Quartz 配置-Spring 定时器-java 定时器 在 Spring 框架中,Quartz 是一个非常流行的开源作业调度器,可以实现任务的定时执行。在本篇文章中,我们将讨论如何在 Spring 中配置 Quartz,以实现 Java ...
Spring Quartz定时器是一种在Java应用中实现定时任务的流行框架,它允许开发者精确地调度任务执行。本篇文章将深入探讨如何在Spring框架中简单实现Quartz定时器,并结合源码和工具来帮助理解其工作原理。 首先,让...
本文将详细介绍如何在Spring项目中集成Quartz定时器,并通过一个简单的示例来进行演示。 #### 一、环境准备 为了能够顺利地运行示例代码,我们需要准备以下必要的依赖库: - `jta-1.1.jar`:用于事务管理。 - `...
Spring Quartz 是一个强大的任务调度框架,它允许开发者在Java应用程序中定义定时任务。这个示例提供了在Spring框架中集成Quartz的详细步骤,适合Java工程的实现。下面将详细介绍Spring与Quartz结合使用的相关知识点...
这篇博客“Spring Quartz 定时器”很可能是探讨如何将Quartz集成到Spring应用中,以便利用其强大的定时任务功能。 首先,我们来看一下Spring与Quartz的结合。Spring通过`org.springframework.scheduling.quartz`包...
在Spring中集成Quartz,首先需要在项目的类路径下添加这三个jar包,然后通过Spring的配置文件来声明Quartz的相关bean。你可以定义`SchedulerFactoryBean`来创建调度器,`JobDetailBean`来定义作业,以及`...
然后,配置Spring的XML文件来设置定时器。在配置中,你需要定义`JobDetailBean`来指定任务类,并通过`CronTriggerBean`来设定调度规则。例如: ```xml <bean name="userTimelineQuartz" class="org.springframework...
Spring Quartz 是一个集成Quartz定时任务框架的Spring模块,它为开发者提供了在Spring环境中便捷配置和管理定时任务的能力。Quartz作为一个强大且功能丰富的任务调度框架,能够灵活地定义任务的执行时间表,并且可以...
本篇文章将详细讲解两种在Spring MVC框架中实现定时任务的方法:Spring MVC自带的定时器以及Quartz与Spring的集成。 首先,我们来看看Spring MVC自带的定时任务。Spring MVC作为Spring框架的一个模块,主要处理HTTP...
本文将深入探讨如何使用Spring整合Quartz来实现定时器,并提供相关代码示例。 首先,理解Spring框架。Spring是一个开源的Java平台,它提供了全面的企业级应用程序开发解决方案,包括依赖注入(DI)、面向切面编程...
在Java Spring框架中,开发者有多种选择来实现定时任务的功能,其中最为流行的两种方式分别是使用Java自带的`Timer`类以及OpenSymphony的Quartz定时器。本文将重点探讨Quartz定时器的配置与使用,尤其是其时间设置的...
首先,要使用Spring的Quartz定时器,你需要确保引入了以下核心的jar包: 1. `quartz.jar`:这是Quartz的核心库,包含了Quartz的调度器、作业、触发器等核心组件。 2. `spring-context-support.jar`:Spring框架提供...
本文将详细讲解如何在Spring Boot项目中集成Quartz定时器,以及如何利用Spring的依赖注入特性来实现Job。 一、集成Quartz定时器 1. 添加依赖:首先,你需要在Spring Boot项目的`pom.xml`或`build.gradle`文件中...
作为一个专业的IT行业大师,我很高兴为你解析Quartz定时器的核心概念、功能以及如何通过源码学习。 Quartz定时器允许开发者创建、调度和管理任务,这些任务可以是简单的函数调用或者复杂的业务流程。它支持多种调度...
《Spring与Quartz定时器深度解析》 在Java开发领域,Spring框架因其强大的功能和灵活性而备受推崇。其中,Spring对任务调度的支持是其一大亮点,尤其与Quartz的集成,使得开发者能够方便地实现定时任务。Quartz是一...
在Spring应用中添加Quartz支持,你需要在`pom.xml`或`build.gradle`文件中引入Quartz的依赖,比如`quartz-all.jar`。接着,在Spring的配置文件(如`applicationContext.xml`)中,定义一个`SchedulerFactoryBean`来...
本篇将深入探讨如何在Spring中启动和停止Quartz定时器。 首先,我们需要理解Spring和Quartz的基本概念。Spring是一个强大的Java企业级应用开发框架,它提供了依赖注入(DI)和面向切面编程(AOP)等核心特性。而...