Acticiti中startProcessInstanceByKey方法在variable表中的如何存储
已知:
在使用runtimeService.startProcessInstanceByKey(String processDefinitionKey, String businessKey, Map<String, Object> variables)
发起流程时,需要将业务数据存入act_hi_varinst
(流程已结束)与act_ru_variable
(流程未结束)这两个表中.如下图:
NAME_
:存储业务表中的字段名称VAR_TYPE
存储为字段类型BOUBLE\_
,LONG\_
,TEXT_
存储字段值
当JAVA类中存在如下类型的属性如:List等引用类型
在varinst中存储的方式为如下图所示,从下图得知activiti将list集合类型的数据序列化到act_ge_bytearray
表中
去到act_ge_bytearray中查找对应的id即可找到对应的序列化存储,但此时发现有两种不同类型的名称NAME_,如下图:
- 以hist.var开头的代表是历史变量,代表流程已结束
- 以var开头的代表流程正在运行中