<TemporalExpression tempExprId="RUNFIVEMINUTES" tempExprTypeId="FREQUENCY" description="Every 5 Minutes" integer1="12" integer2="5"/>
<JobSandbox jobId="SENDRECEIVEORDER" jobName="Send Receive Order" runTime="2011-6-01 00:00:00.000" serviceName="sendReceiveOrder" poolId="pool" runAsUser="system" tempExprId="RUNFIVEMINUTES" maxRecurrenceCount="-1"/>
这个是一个5分钟调用一次sevice方法的例子
可以供参考
有2种实现方法
1 是按照上面例子仿写把数据初始化在数据库中
2 是操作webtools中的任务计划,设置以上2条数据。
具体说明
tempExprTypeId有如下几种:
DateRange
DayInMonth
DayOfMonthRange
DayOfWeekRange
Difference
Frequency
Intersection
MonthRange
TimeOfDayRange
Union
比如如果希望服务只执行一次,可以如下配置:
<TemporalExpression tempExprId="RUNONCE" tempExprTypeId="FREQUENCY" integer1="1" integer2="1"/>
<JobSandbox jobId="CurrencyRateSynAll" jobName="Currency Rate SynAll" runTime="2010-10-01 00:00:00.000" serviceName="sendReceiveOrder" poolId="pool" runAsUser="system" tempExprId="RUNONCE" maxRecurrenceCount="0"/>
maxRecurrenceCount="0" 表示,不重复。tempExprTypeId="FREQUENCY" integer1="1" integer2="1"表示一年执行一次。所以总共执行一次就结束了。
每5分钟执行一次可以这样配置:
<TemporalExpression tempExprId="RUNFIVEMINUTES" tempExprTypeId="FREQUENCY" description="Every 5 Minutes" integer1="12" integer2="5"/>
<JobSandbox jobId="SENDRECEIVEORDER" jobName="Send Receive Order" runTime="2010-10-01 00:00:00.000" serviceName="sendReceiveOrder" poolId="pool" runAsUser="system" tempExprId="RUNFIVEMINUTES" maxRecurrenceCount="-1"/>
每天都执行可以这样配置:
<TemporalExpression tempExprId="MIDNIGHT_DAILY" tempExprTypeId="TIME_OF_DAY_RANGE" string1="20:00:00" string2="20:00:00"/>
<JobSandbox jobId="MailNotification" jobName="Mail Notification Job" runTime="2010-10-01 00:00:00.000" serviceName="sendReceiveOrder" poolId="pool" runAsUser="system" tempExprId="MIDNIGHT_DAILY" maxRecurrenceCount="-1"/>
maxRecurrenceCount="-1"表示无限循环下去。tempExprId="MIDNIGHT_DAILY" tempExprTypeId="TIME_OF_DAY_RANGE" string1="20:00:00" string2="20:00:00"/>表示每天晚上八点执行。
每个月一次任务可以如下配置:
<TemporalExpression tempExprId="ONCEINMONTH" tempExprTypeId="FREQUENCY" date1="2010-02-26 11:05:00.000" integer1="2" integer2="1"/>
<JobSandbox jobId="CurrencyRateSyn" jobName="Currency Rate Syn" runTime="2010-10-01 00:00:00.000" serviceName="sendReceiveOrder" poolId="pool" runAsUser="system" tempExprId="ONCEINMONTH" maxRecurrenceCount="-1"/>
tempExprTypeId="FREQUENCY" date1="2010-02-26 11:05:00.000" integer1="2" integer2="1"表示每月一次,时间就是date1定义的时间,如果没用定义date1,那么就是当前时间。
这里的配置相当灵活,好好掌握。