`

Spring—Quartz定时调度CronTrigger时间配置格式说明与实例

 
阅读更多
转至http://blog.csdn.net/foamflower/article/details/4260645


1、   CronTrigger时间格式配置说明

CronTrigger配置格式:
格式: [秒] [分] [小时] [日] [月] [周] [年]

序号  说明    是否必填    允许填写的值          允许的通配符
1     秒      是          0-59                    , - * /
2     分      是          0-59                    , - * /
3     小时    是          0-23                    , - * /
4     日      是          1-31                    , - * ? / L W
5     月      是          1-12 or JAN-DEC         , - * /|
6     周      是          1-7 or SUN-SAT          , - * ? / L #
7     年      否          empty 或 1970-2099      , - * /


通配符说明:
* :表示所有值. 例如:在分的字段上设置 "*",表示每一分钟都会触发。
? :表示不指定值。使用的场景为不需要关心当前设置这个字段的值。例如:要在每月的10号触发一个操作,但不关心是周几,所以需要周位置的那个字段设置为"?" 具体设置为 0 0 0 10 * ?
- :表示区间。例如 在小时上设置 "10-12",表示 10,11,12点都会触发。
, :表示指定多个值,例如在周字段上设置 "MON,WED,FRI" 表示周一,周三和周五触发
/ :用于递增触发。如在秒上面设置"5/15" 表示从5秒开始,每增15秒触发(5,20,35,50)。 在月字段上设置'1/3'所示每月1号开始,每隔三天触发一次。
L :表示最后的意思。在日字段设置上,表示当月的最后一天(依据当前月份,如果是二月还会依据是否是润年[leap]), 在周字段上表示星期六,相当于"7"或"SAT"。如果在"L"前加上数字,则表示该数据的最后一个。
例如在周字段上设置"6L"这样的格式,则表示“本月最后一个星期五"
W :表示离指定日期的最近那个工作日(周一至周五). 例如在日字段上设置"15W",表示离每月15号最近的那个工作日触发。如果15号正好是周六,则找最近的周五(14号)触发, 如果15号是周未,则找最近的下周一(16号)触发.如果15号正好在工作日(周一至周五),则就在该天触发。如果指定格式为 "1W",它则表示每月1号往后最近的工作日触发。如果1号正是周六,则将在3号下周一触发。(注,"W"前只能设置具体的数字,不允许区间"-").
'L'和 'W'可以一组合使用。如果在日字段上设置"LW",则表示在本月的最后一个工作日触发

# :序号(表示每月的第几周星期几),例如在周字段上设置"6#3"表示在每月的第三个周星期六.注意如果指定"6#5",正好第五周没有星期六,则不会触发该配置(用在母亲节和父亲节再合适不过了)
周字段的设置,若使用英文字母是不区分大小写的 MON 与mon相同.

常用示例:

格式: [秒] [分] [小时] [日] [月] [周] [年]
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分每分触发
0 0/5 14 * * ?           每天下午的 2点到2点59分(整点开始,每隔5分触发) 
0 0/5 14,18 * * ?        每天下午的 18点到18点59分(整点开始,每隔5分触发)

0 0-5 14 * * ?            每天下午的 2点到2点05分每分触发
0 10,44 14 ? 3 WED        3月分每周三下午的 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           每月的第三周的星期五开始触发
0 0 12 1/5 * ?            每月的第一个中午开始每隔5天触发一次
0 11 11 11 11 ?           每年的11月11号 11点11分触发(光棍节)
分享到:
评论

相关推荐

    Spring quartz定时调度jar包

    首先,你需要在Spring的配置文件中声明一个`SchedulerFactoryBean`,这将初始化并管理Quartz调度器。然后,你可以定义`JobDetail`和`Trigger`,`JobDetail`代表你要执行的任务,而`Trigger`定义了任务的执行时机。...

    Spring quartz 定时任务调度

    Spring Quartz 是一个强大的开源任务调度框架,它允许开发者在Java应用程序中定义和执行定时任务。在Spring框架中集成Quartz,可以充分利用Spring的IoC(Inversion of Control)和AOP(Aspect Oriented Programming...

    spring整合quartz定时任务调度

    Spring框架作为Java领域广泛使用的轻量级框架,提供了与第三方库Quartz的整合,使得开发者能够轻松地在Spring应用中实现复杂的定时任务调度。Quartz是一款开源的作业调度框架,支持丰富的调度策略,可以满足各种定时...

    Spring Quartz 任务调度实例

    Spring Quartz 是一个强大的任务调度框架,它允许开发者在Java应用程序中定义和执行定时任务。结合Spring框架,可以方便地在企业级应用中实现复杂的时间触发逻辑。本实例提供了可以直接运行的任务调度解决方案,既...

    Spring+Quartz定时调度

    ### 三、Quartz调度策略 Quartz提供了多种调度策略,包括: - **简单触发器(SimpleTrigger)**:按固定间隔重复执行任务。 - **Cron触发器(CronTrigger)**:基于Cron表达式来定义触发时间,支持复杂的定时规则...

    Spring的定时调度--Quartz

    本篇将详细探讨Spring如何集成Quartz库来实现定时任务,以及Quartz的基本概念、核心组件和配置方式。 Quartz是一款开源的作业调度框架,它允许开发者安排任务在特定时间执行,从而实现定时任务的需求。Quartz支持...

    Spring整合quartz2.2.3总结,quartz动态定时任务,Quartz定时任务集群配置

    Quartz是一款开源的作业调度框架,它允许程序在特定时间执行预定的任务,而Spring则是一个强大的企业级应用开发框架,提供了丰富的依赖注入(DI)和面向切面编程(AOP)等功能。将两者结合,可以方便地在Spring应用...

    spring多个定时任务quartz配置

    在Spring框架中,Quartz是一个强大的任务调度库,可以用于执行定时任务。本文将深入探讨如何在Spring中配置Quartz以实现多个定时任务。 首先,我们需要理解Quartz的基本概念。Quartz是一个开源的工作调度框架,它...

    Spring quartz任务调度

    Quartz是一款开源的作业调度框架,它允许开发者安排任务在特定时间执行,而Spring框架则提供了与Quartz的无缝集成,使得在Spring应用中管理定时任务变得更加便捷。 在Spring中使用Quartz,首先需要引入相关的依赖库...

    转:spring多个定时任务quartz配置

    5. **配置Spring**:在Spring的配置文件中,我们需要声明`SchedulerFactoryBean`来初始化Quartz调度器,并定义`@Component`或`<bean>`来管理Job和Trigger。 ```xml <bean id="schedulerFactoryBean" class="org....

    spring-quartz简单实例

    在这个"spring-quartz简单实例"中,我们将探讨如何在Spring环境下配置和使用Quartz。 首先,我们需要引入Quartz和Spring的依赖。在Maven项目中,这通常通过在pom.xml文件中添加以下依赖来完成: ```xml ...

    spring动态定时调度任务

    `SchedulerFactoryBean`是Spring调度工厂,用于创建Quartz的Scheduler实例,并通过`triggers`属性指定一个或多个触发器,这里的`cronTrigger`引用了上面配置的`CronTriggerBean`。 在`ScheduleInfoAction`的`...

    spring的quartz使用实例

    以下是对Spring整合Quartz使用实例的详细说明: 1. **Quartz简介** Quartz是一个强大的、完全开源的作业调度框架,它支持复杂的调度策略,如按日期、时间间隔或自定义表达式执行。Quartz可以在Java应用中作为独立...

    spring mvc quartz 动态设置时间

    - 通过`@Resource`注解注入了`Scheduler`实例,使得服务类可以直接与Quartz调度器交互。 - `reScheduleJob`方法首先获取数据库中的调度信息(例如,通过`getCronExpressionFromDB()`),然后根据`SysSchedule`对象...

    quartz定时调度

    Spring的SchedulerFactoryBean用于创建和配置Quartz调度器,并将其与Spring容器集成,这样我们就可以利用Spring的依赖注入来管理作业的实例。 在项目实践中,通常会创建一个继承自`org.springframework.scheduling....

    quartz 定时任务调度

    Quartz 提供了一套丰富的 API 和支持,可以方便地与 Spring 框架集成,实现灵活的定时任务调度。 在 Spring 中集成 Quartz,首先需要创建一个 Java 类作为定时任务的执行体,例如 `MyJob` 类。这个类通常包含一个...

    Spring整合Quartz定时任务实例

    6. **启动调度器**:在Spring的主配置类或启动类中,启动Quartz调度器。 ```java @Autowired private SchedulerFactoryBean schedulerFactoryBean; public void startScheduler() { Scheduler scheduler = ...

    quartz3种调度形式+传参.zip

    二、Spring + Quartz调度 当Quartz与Spring框架结合使用时,可以充分利用Spring的依赖注入和管理特性,简化任务的配置和管理。Spring提供了一个`org.springframework.scheduling.quartz.SchedulerFactoryBean`,...

    spring Quartz的jar包

    1. **配置**:在Spring应用上下文配置文件中,你需要声明一个SchedulerFactoryBean实例,它是Quartz调度器的Spring bean。通过设置相关的属性,如jobStoreType(用于持久化Job状态的存储类型)、triggers(定义任务...

    java spring quartz 动态定时任务

    Spring与Quartz的结合使用,使得我们可以方便地在Spring框架下管理定时任务,同时还能实现任务的动态添加、修改和删除。 Quartz是一个开源的作业调度框架,支持丰富的调度策略,包括简单的定时执行、按日程表执行...

Global site tag (gtag.js) - Google Analytics