ofbiz中job任务使用

Ofbiz中的job使用

Job是什么?
Job是ofbiz中的一个自动作业的模块,某种意义上有点类似timer,可以用这个完成大多数周期性的任务操作。

1、首先要先写这个jobSendBox,如下:
    <JobSandbox jobId="FAM_AUTO_CREATE" jobName="Auto-create Fixed Asset Maintenances" runTime="2000-01-01 00:00:00.000" serviceName="createMaintsFromTimeInterval" poolId="pool" runAsUser="system" tempExprId="FAM_AUTO_CREATE" maxRecurrenceCount="-1"/>
Job要表达更复杂的执行条件,需要配合TemporalExpression表达式,如下:
<TemporalExpression tempExprId="FAM_AUTO_CREATE" tempExprTypeId="FREQUENCY" description="Every Hour" integer1="12" integer2="60"/>
其实,这个jobSendBox就是执行的条件规则和触发对象的调用以及次数的设置。但是这要在web项目一启动便要开始运行,所以我们在之前需要先将这个Job数据初始化。
<!--如果想对线程池、job的其他的全局属性进行调整的话,可以在serviceengine.xml里面<thread-pool>标签进行调整-->
初始化的方法有三种
一、 利用ofbiz工具xml数据导入工具,将上述job导进数据库
二、 利用ofbiz本身的job配置的界面化工具进行配置
三、 利用ofbiz种子数据的加载方式将job进行初始化

<TemporalExpression>标签属性介绍:

属性tempExprTypeId有如下几种:

DateRange
DayInMonth
DayOfMonthRange
DayOfWeekRange
Difference
Frequency
Intersection
MonthRange
TimeOfDayRange
Union

JobSendBox标签简单介绍

JobSendBox标签里面的属性serviceName指的是被调用service的名称
属性maxRecurrenceCount, 值为0,表示不重复,值为-1,表示无限次重复,值为大于0的数,则重复次数为这个数值。



TemporalExpression表达式相关:http://juck.iteye.com/admin/blogs/1501722

转载注明出处:charles,http://juck.iteye.com/blog/1507440

猜你喜欢

转载自juck.iteye.com/blog/1507440