配置文件:
<?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:context="http://www.springframework.org/schema/context" xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd">
<!-- 定时器,定时服务队列 -->
<bean id="schedulerFactoryService" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="sadapter.order.ChkOrderTrigger" />
<!-- <ref bean="sadapter.order.sendOrderTrigger" />
<ref bean="sadapter.order.overTimeOrderCheckTrigger" />
<ref bean="sadapter.messNotify.MessNotifyAutoSendTrigger" />
<ref bean="sadapter.messNotify.OverTimeMessNotifyAutoCheckTrigger" /> -->
</list>
</property>
</bean>
<!--自动审核 1分钟一次 -->
<bean id="sadapter.order.ChkOrderTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail">
<ref bean="sadapter.order.ChkOrderTask" />
</property>
<!-- 配置定时服务的启动时间 -->
<property name="cronExpression">
<value>0 0/1 * * * ?</value>
</property>
</bean>
<!-- 指定定时服务的类、方法 -->
<bean id="sadapter.order.ChkOrderTask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<!-- 调度接口实现 -->
<property name="targetObject">
<ref bean="sadapter.order.OrderAutoCheckProcesser" />
</property>
<!-- 目标方法 -->
<property name="targetMethod">
<value>chkOrder</value>
</property>
<property name="concurrent">
<value>false</value>
</property>
</bean>
<!-- 定时服务类 -->
<bean id="sadapter.order.OrderAutoCheckProcesser"
class="efs.sadapter.quartz.impl.OrderAutoCheckProcesserImpl" />
</beans>
引用
表达式意义:
秒 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 *
特殊字符说明:
"*"字符被用来指定所有的值。如:"*"在分钟的字段域里表示"每分钟"。
"?"字符只在日期域和星期域中使用。它被用来指定"非明确的值"。当你需要通过在这两个域中的一个来指定一些东西的时候,它是有用的。
月份中的日期和星期中的日期这两个元素时互斥的一起应该通过设置一个问号(?)来表明不想设置那个字段
"-"字符被用来指定一个范围。如:"10-12"在小时域意味着"10点、11点、12点"。
","字符被用来指定另外的值。如:"MON,WED,FRI"在星期域里表示"星期一、星期三、星期五".
"/"字符用来指定具体的增量。如"0/15"在秒中的配置表示"从0秒开始每隔15秒",即"0,15,30,45"。
如"5/15"在秒中的配置表示"从5秒开始每隔15秒",即"5,20,35,50"。"*/5"和"0/5"是一个效果。
L是‘last’的省略写法可以表示day-of-month和day-of-week域,但在两个字段中的意思不同,
例如day-of-month域中表示一个月的最后一天, 如果在day-of-week域表示‘7’或者‘SAT’,
如果在day-of-week域中前面加上数字,它表示一个月的最后几天,例如‘6L’就表示一个月的最后一个星期五。
分享到:
相关推荐
Spring Quartz 动态配置时间 Spring Quartz 是一个功能强大的任务调度框架,广泛应用于 Java 企业级应用程序中。其中一个重要的功能便是动态配置时间,触发相应的任务。在本文中,我们将讨论如何使用 Spring Quartz...
环境:myEclipse,tomcat,jdk Spring 2 使用OpenSymphony Quartz 调度器
Spring中Quartz调度器的使用 示例代码
该资源描述了用spring+quartz搭建的环境来管理任务调度的基本配置
Spring Quartz 任务调度实例 可直接运行 可应用服务器启动调用 也可main入口调用 主要用于打jar包用
Spring中Quartz调度器的使用Spring中Quartz调度器的使用
spring任务调度(Quartz )非常基础,
使用Spring Quartz框架调度的完整实例,包含代码与Spring Quartz相关的jar,可直接运行与使用。相关学习文档参考博客《Spring中使用Quartz任务调度 http://blog.csdn.net/chenxiang0207/article/details/8252784》。
各种企业应用几乎都会碰到任务调度的需求,就拿论坛来说:每隔半个小时生成精华文章的RSS文件,每天凌晨统计论坛用户的积分排名,每隔30分钟执行锁定 用户解锁任务。对于一个典型的MIS系统来说,在每月1号凌晨统计上...
Spring Quartz 定时调度任务,带中文注解与jar文件,导入项目即可直接运行。
spring quartz java任务调度 完整 可执行
Spring整合任务调度框架Quartz,本文档详细介绍了Spring整合任务调度框架Quartz,希望可以帮助学习者
Spring中Quartz任务调度器cronexpression配置说明
quartz自动调度的3种调度形式+传参 1.单纯的quartz调度 2.spring+quartz调度
Spring中集成的一个定时任务调度器,以备以后使用
利用spring的Quartz做任务调度所需要的所有jar包
Quartz + spring简单配置多个任务调度 spring配置文件 简单配置
spring+quartz任务调度代码版
虽然可以通过属性文件(在属性文件中可以指定 JDBC 事务的数据源、全局作业和/或触发器侦听器、插件、线程池,以及更多)配置 Quartz,但它根本没有与应用程序服务器的上下文或引用集成在一起。结果就是作业不能访问...
里面包含了两个工程项目: 1.Java project工程(含jar包,JDK1.6)。 是spring+quartz的任务调度实例。 2.Java web工程(含jar包,JDK1.7)。 spring+mybatis+quartz任务调度实例