总结之Activiti流程引擎使用(一)——数据表与service分析

部署流程定义流程相关

使用的是RepositoryService

classpath路径加载文件
在这里插入图片描述
在这里插入图片描述
在数据库中将操作三张表:

1、act_re_deployment(部署对象表)

存放流程定义的显示名和部署时间,每部署一次增加一条记录

2、act_re_procdef(流程定义表)

存放流程定义的属性信息,部署每个新的流程定义都会在这张表中增加一条记录。
注意:当流程定义的key相同的情况下,使用的是版本升级

3、act_ge_bytearray(资源文件表)

存储流程定义相关的部署信息。即流程定义文档的存放地。每部署一次就会增加两条记录,一条是关于bpmn规则文件的,一条是图片的(如果部署时只指定了bpmn一个文件,activiti会在部署时解析bpmn文件内容自动生成流程图)。两个文件不是很大,都是以二进制形式存储在数据库中。

zip格式文件部署流程定义

在这里插入图片描述

查看流程定义

在这里插入图片描述
流程定义和部署对象相关的Service都是RepositoryService

流程实例、任务的执行

部署流程定义

在这里插入图片描述

启动流程实例

在这里插入图片描述

查询个人任务

在这里插入图片描述

办理任务

在这里插入图片描述

查询流程状态

在这里插入图片描述

查询历史任务

在这里插入图片描述

流程实例运行相关表

Execution 执行对象
按流程定义的规则执行一次的过程.
对应的表:

act_ru_execution: 正在执行的信息
act_hi_procinst:已经执行完的历史流程实例信息
act_hi_actinst:存放历史所有完成的活动

ProcessInstance 流程实例
特指流程从开始到结束的那个最大的执行分支,一个执行的流程中,流程实例只有1个。

注意
(1)如果是单例流程,执行对象ID就是流程实例ID
(2)如果一个流程有分支和聚合,那么执行对象ID和流程实例ID就不相同
(3)一个流程中,流程实例只有1个,执行对象可以存在多个。

Task 任务
执行到某任务环节时生成的任务信息。
对应的表:

act_ru_task:正在执行的任务信息
act_hi_taskinst:已经执行完的历史任务信息

流程变量

作用:1、用于传递业务参数
2、指定连线完成任务(同意、拒绝、退回)
3、动态指定任务的办理人

设置流程变量

在这里插入图片描述
setVariableLocal()变量只在下个办理中显示,下下个没有该参数了
setVariable:设置流程变量的时候,流程变量名称相同的时候,后一次的值替换前一次的值,而且可以看到TASK_ID的字段不会存放任务ID的值
setVariableLocal:
1:设置流程变量的时候,针对当前活动的节点设置流程变量,如果一个流程中存在2个活动节点,对每个活动节点都设置流程变量,即使流程变量的名称相同,后一次的版本的值也不会替换前一次版本的值,它会使用不同的任务ID作为标识,存放2个流程变量值,而且可以看到TASK_ID的字段会存放任务ID的值
2:还有,使用setVariableLocal说明流程变量绑定了当前的任务,当流程继续执行时,下个任务获取不到这个流程变量(因为正在执行的流程变量中没有这个数据),所有查询正在执行的任务时不能查询到我们需要的数据,此时需要查询历史的流程变量。

在这里插入图片描述
Javabean类型设置获取流程变量,除了需要这个javabean实现了Serializable接口外,还要求流程变量对象的属性不能发生变化,否则抛出异常。解决方案,固定序列化ID

模拟流程变量的设置和获取的场景

在这里插入图片描述
1) RuntimeService对象可以设置流程变量和获取流程变量
2) TaskService对象可以设置流程变量和获取流程变量
3) 流程实例启动的时候可以设置流程变量
4) 任务办理完成的时候可以设置流程变量
5) 流程变量可以通过名称/值的形式设置单个流程变量
6) 流程变量可以通过Map集合,同时设置多个流程变量
Map集合的key表示流程变量的名称
Map集合的value表示流程变量的值

设置流程变量的时候,向act_ru_variable这个表添加数据

获取流程变量

在这里插入图片描述

查询历史的流程变量

在这里插入图片描述

流程变量相关表

在流程执行或者任务执行的过程中,用于设置和获取变量,使用流程变量在流程传递的过程中传递业务参数。
对应的表:

act_ru_variable:正在执行的流程变量表
act_hi_varinst:流程变量历史表

流程历史查询

查找按照某个流程定义的规则一共执行了多少次流程
在这里插入图片描述
某一次流程的执行一共经历了多少个任务
在这里插入图片描述
某一次流程的执行一共经历了多少个任务
在这里插入图片描述
某一次流程的执行一共设置的流程变量

在这里插入图片描述

流程历史相关表

 ACT_HI_PROCINST 流程实例
 ACT_HI_ACTINST 正在运行的流程实例
 ACT_HI_TASKINST任务数量
 ACT_HI_DETAIL:启动流程或者在任务complete之后,记录历史流程变量
 ACT_HI_COMMENT 意见表

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值