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

流程变量传输
实例任务变量通过相关方法
args
参数传递,该参数以json字符串
的格式存放到表flw_task
flw_his_task
flw_instance
flw_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("参数")
提示!
动态分配处理人,可用在发起流程的时候动态分配。 数据传输在不破坏现有现有接口及跨方法传输的情况下是非常完美有效的传参方式。