1. 从一张表说起:为什么act_ru_identitylink是Activiti的“关系枢纽”
如果你用过Activiti,肯定对act_ru_task(任务表)和act_ru_execution(执行流表)这些核心表不陌生。它们就像流程引擎的“骨架”,清晰地记录着流程走到哪一步了。但不知道你有没有过这样的困惑:一个任务到底是谁在处理?谁有资格去处理?流程启动后,除了发起人,还有哪些人跟这个流程有关系?这些关于“谁”和“什么关系”的信息,在Activiti里,就集中记录在一张看似不起眼,实则至关重要的表里——act_ru_identitylink。
我刚开始接触Activiti时,也一度忽略了这张表,觉得它就是个配角。直到在项目里踩了几个坑:比如任务认领后,原候选人还能不能看到任务?流程参与者权限怎么动态管理?想查询某个用户所有相关的流程实例时,发现只查act_ru_task根本不够用。这时候,我才回过头来仔细研究act_ru_identitylink,发现它简直是连接“流程数据”和“人员组织数据”的桥梁,是理解Activiti权限和协作模型的关键。
简单来说,act_ru_identitylink(运行时身份联系表)专门用来存储流程实例或任务与用户、用户组之间的关联关系。它回答了流程世界里的“人机关系”问题:谁启动了流程?谁被指派了这个任务?哪些人或组有资格来拾取这个任务?谁是这个任务的真正负责人?哪些人被标记为流程的参与者?搞懂了这张表,你就能精准地控制流程中的任务分配、权限范围和协作网络。接下来,我们就掰开揉碎,看看这张表里到底藏着哪些秘密,以及怎么在实战中用活它。
2. 庖丁解牛:act_ru_identitylink的核心字段与五大类型
我们先来看看这张表长什么样。它的结构其实很清晰,每个字段都有明确的使命。
| 字段名 | 类型 | 是否为空 | 描述 |
|---|---|---|---|
ID_ |
varchar(64) | 否 | 主键,唯一标识。 |
REV_ |
int(11) | 是 | 版本号,用于乐观锁,处理并发更新。 |
GROUP_ID_ |
varchar(255) | 是 | 关联的用户组ID,对应act_id_group表的ID_。 |
TYPE_ |
varchar(255) | 是 | 核心字段,标识关联关系的类型。 |
USER_ID_ |


1万+

被折叠的 条评论
为什么被折叠?



