流程数据传输
流程执行中需要传递
临时变量任务变量实例变量(全局变量)用于判断执行路径。
传输流程图
数据传输分为
特殊变量传输和流程变量传输两种流程图如下。

流程变量传输
实例任务变量通过相关方法
args参数传递,该参数以json字符串的格式存放到表flw_taskflw_his_taskflw_instanceflw_his_instance中的variable字段。
提示!
任务 flw_task flw_his_task 为局部变量,实例 flw_instance flw_his_instance 为全局变量。
特殊变量传输
特殊变量传输,是流程执行节点的操作,主要实现类
FlowDataTransfer静态方法定义操作方法。 用于在流程引擎内部无方法参数形式传递执行变量,基于ThreadLocal实现参数传递。
- 案例:查看测试用例
TestModel.testDynamicAssignee()传输动态节点处理人
java
FlowDataTransfer.dynamicAssignee(new HashMap<String, Object>() {{
// 节点动态分配处理人
put(nodeName, DynamicAssignee.assigneeUserList(assigneeList));
}});- 可用在业务中处理跨方法同一个线程的参数传递
java
// 设置参数
FlowDataTransfer.put("参数", 变量对象);
// 获取变量
Object value = FlowDataTransfer.get("参数")提示!
动态分配处理人,可用在发起流程的时候动态分配。 数据传输在不破坏现有现有接口及跨方法传输的情况下是非常完美有效的传参方式。
