springboot开发flowable定时任务问题
springboot开发flowable定时任务
激活流程引擎的一步执行器
@Bean public ExtProcessEngineConfiguration engineConfiguration(){ ExtProcessEngineConfiguration engineConfiguration = new ExtProcessEngineConfiguration(); engineConfiguration.setDatabaseSchemaUpdate("true"); engineConfiguration.setDataSource(dataSource); engineConfiguration.setTransactionManager(transactionManager); engineConfiguration.setAsyncExecutorActivate(true); List<SessionFactory> customSessionFactories = new ArrayList<>(); customSessionFactories.add(userEntityManagerFactory()); customSessionFactories.add(groupEntityManagerFactory()); customSessionFactories.add(membershipEntityManagerFactory()); engineConfiguration.setCustomSessionFactories(customSessionFactories); return engineConfiguration;
流程图:
其中,定时任务节点类型是 Timer Intermediate Catch Event
设置Timer Definition Type,有3种类型:
- Date(指定某个时间点触发)
- Duration(延时一段时间触发)
- Cycle(循环触发直到某个时间点结束)
timeDate
<timerEventDefinition> <timeDate>2018-02-06T12:13:14</timeDate> </timerEventDefinition>
在确切的时间点执行
timeDuration
<timerEventDefinition> <timeDuration>P10D</timeDuration> </timerEventDefinition>
从最后一个任务完成后10天开始执行
timeCycle
<timerEventDefinition> <timeCycle activiti:endDate="2018-02-25T16:42:11+00:00">R3/PT10H</timeCycle> </timerEventDefinition>
或者变量形式:
<timerEventDefinition> <timeCycle>R3/PT10H/${EndDate}</timeCycle> </timerEventDefinition>
循环3次,间隔10小时
也可以使用cron expressions :http://www.quartz-scheduler.org/documentation/
比如设置了
<timerEventDefinition> <timeDate>2018-02-06T12:13:14</timeDate> </timerEventDefinition>
流程开始后,如果还未到2018.02.06 12:13:14,数据会保存在act_ru_timer_job里直到时间达到,flowable会单独启动一个线程执行任务到领导审批节点,act_ru_timer_job里的数据删除。
注意点:
由于flowable会另启一个线程执行job,ThreadLocal相关变量都会获取不到。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
微服务 Spring Boot 整合 Redis BitMap 实现 签到与统计功能
这篇文章主要介绍了微服务 Spring Boot 整合 Redis BitMap 实现 签到与统计功能,文章简单介绍了Redis BitMap 基本用法结合实例代码给大家介绍的非常详细,需要的朋友可以参考下2023-01-01Java数据库连接PreparedStatement的使用详解
这篇文章主要介绍了Java数据库连接PreparedStatement的使用详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2017-08-08Spring Cloud超详细i讲解Feign自定义配置与使用
这篇文章主要介绍了SpringCloud Feign自定义配置与使用,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2022-06-06
最新评论