BPM配置学习

企业流程化管理,经常想到的是ERP等,今天翻阅martini中的bpm实现,学习了里面的流程化业务管理模式。

在martini中bpm进行任务流转和调度的,会用到一个叫Quartz的框架,只需要通过在Spring的bean管理中进行配置和依据Quartz的比较常用的两个org.springframework.scheduling.quartz.SimpleTriggerBean和org.springframework.scheduling.quartz.CronTriggerBean就可以十分灵活的实现任务的策略调用。

两个类的区别为:

SimpleTrigger更类似于JDK中的Timer,它只是简单的以某个时间间隔来执行某个任务而已,比较简陋,而CronTrigger功能则十分强大,可以设定制定任务在任意指定时刻内调用。


Spring的配置如下:

CronTriggerBean类进行任务调配(精确定义任务执行时间):

    <bean id="cacheRefreshTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
        <property name="jobDetail">
            <bean class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
                <property name="concurrent" value="false"/>
                    <property name="targetObject" ref="resourceManager"/>
                    <property name="targetMethod" value="patrol"/>
            </bean>
        </property>
        <property name="cronExpression" value="0 0/1 * * * ?"/>
    </bean>


SimpleTriggerBean类进行任务调配(可以定义任务执行频率):

<bean id="simpleReportTrigger"       class="org.springframework.scheduling.quartz.SimpleTriggerBean">
    <property name="jobDetail">
      <ref bean="reportJob"/>
    </property>
    <property name="startDelay">
      <value>3600000</value>
    </property>
    <property name="repeatInterval">
      <value>86400000</value>
    </property>
  </bean>


cronExpression 配置任务执行的间隔时间、频率,用法有点类似linux上面的启动任务的list 。 具体是(参考文档:http://xiaolele.iteye.com/blog/368922。这里写的很细,在细就参考http://www.opensymphony.com/quartz主页):

字段名  允许的值  允许的特殊字符

 0-59 , - * /
 0-59 , - * /
小时 0-23 , - * /
 1-31 , - * ? / L W C
 1-12 or JAN-DEC , - * /
周几 1-7 or SUN-SAT , - * ? / L C #
年 (可选字段) empty, 1970-2099 , - * /


cronExpression参考:http://xiaolele.iteye.com/blog/368922


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值