LYWILL设计运营 - 网站运营与推广、开发技术、成功项目展示。

Quartz的时间配置方法&Quartz.Server.Service.exe.config配置说明

一、Quartz的时间配置方法:

Field Name Mandatory? Allowed Values Allowed Special Characters
Seconds YES 0-59 , - * /
Minutes YES 0-59 , - * /
Hours YES 0-23 , - * /
Day of month YES 1-31 , - * ? / L W C
Month YES 1-12 or JAN-DEC , - * /
Day of week YES 1-7 or SUN-SAT , - * ? / L C #
Year NO empty, 1970-2099 , - * /
 
 
 
 
项目实例:
second minute hours dayOfMonth month dayOfWeek year
每月 0 0 6 ? * 6#3 ?
每周 59 59 18 ? * 1 ?
自定义 28 47 9 30 7 ? 2006
 
每月:每个月的第三个星期五的上午6:00:00 触发
每周:每周的星期日的下午18:59:59 触发
自定义:2006年7月30日上午9:47:28 触发
 

 

所有星号对应的段位置,都可以出现后面的符号(, - * /)
(? / L C)这些符号可以出现在"一月哪天"和"星期"段位置
(w)只能出现在"一月哪天"段位置
(#)只能出现在"星期"段位置

解释符号代表的意思:
* 代表任意合法的字段
0 * 17 * * ? :表示在每天的5 PM 到 5:59之间的每一分钟启动scheduler
? 表示没值被指定
如果同时指定"一月哪天"和"星期",可能两者对应不起来
0 0,15,30,45 * * * ? :表示每刻钟启动scheduler
所以推荐用法是其中一个指定值,另一个用?指定

/ 表示时间的增量
0 0/15 * * * ? :表示每刻钟启动scheduler
- 表示值的范围
0 45 3-8 ? * *
L 如果用在"一月哪天"段上,表示一个月的最后一天;如果用在"星期"段上。表示一个星期的最后一天(星期六)
0 0 8 L * ? :表示每个月最后一天的8点启动scheduler
W 表示最靠近给定时间的一天,(必须是星期一到星期五)

# 例如 6#3表示一个月的第三个星期五

 

二、Quartz.Server.Service.exe.config 配置说明:
 
下面加粗位置需要根据实际修改。
<!-- spring section -->
<spring>
<context>
<resource uri="config://spring/objects" />
</context>
<objects xmlns="http://www.springframework.net">
<object id="scheduler" type="Spring.Scheduling.Quartz.SchedulerFactoryObject, Spring.Scheduling.Quartz">
<property name="Triggers">
<list>
<ref local="**Trigger"/>
</list>
</property>
</object>
<!--Simple Trigger-->
<!--<object id="simpleTrigger" type="Spring.Scheduling.Quartz.SimpleTriggerObject, Spring.Scheduling.Quartz">
<property name="JobDetail" ref="NoOpJobDetail"/>
<property name="RepeatInterval" value="10s"/>
<property name="RepeatCount" value="1"/>
</object>-->
<object id="**Trigger" type="Spring.Scheduling.Quartz.CronTriggerObject, Spring.Scheduling.Quartz">
<property name="JobDetail" ref="**Job" />
<property name="CronExpressionString" value="0 0 10 * * ?" />
</object>
<object name="**Job" type="Spring.Scheduling.Quartz.JobDetailObject, Spring.Scheduling.Quartz">
<property name="JobType" value="命名空间.类名, 程序集名称" />
</object>
</objects>
</spring>
<!--
We use quartz.properties for this server, you can always use configuration section if you want to
Configuration section has precedence here.
-->
<quartz>
<add key="quartz.server.serviceName" value="QuartzServer"/>
<add key="quartz.server.serviceDisplayName" value="****定时服务"/>
<add key="quartz.server.serviceDescription" value="****定时服务"/>
<add key="quartz.server.type" value="Spring.Scheduling.QuartzService.SpringQuartzServer, Spring.Scheduling.QuartzService"/>
</quartz>

标签: Quartzasp.net

作者:lywill 分类:开发技术 浏览:7908 评论:0