Activiti-01(Activiti6)介绍
文章目录
一、什么是Activiti
Activiti是由Alfresco软件在2010年5月17日发布的业务流程管理(BPM)框架,它是覆盖了业务流程管理,工作流,服务协作等领域的一个开源,灵活的,易扩展的可执行流程语言框架。
二、其它工作流框架介绍
JBPM
JBPM由JBoss公司开发,目前最高版本JPBM7,不过从JBPM5开始已经跟之前不是同一个产品了,JBPM5的代码基础不是JBPM4,而是从Drools Flow重新开始。下面要涉及的很多产品都是以JBPM4的代码为起点进行开发的。
Flowable
Flowable基于activiti6,最新的开源版本是flowable6,开发团队是从activiti中分裂出来的,修复了一众activiti6的bug,并在其基础上研发了DMN支持,BPEL支持等等。相对开源版,其商业版的功能会更强大。
Camunda
Camunda基于activiti5,所以其保留了PVM,最新版本Camunda7,开发团队也是从activiti中分裂出来的,发展轨迹与flowable相似,同时也提供了商业版。
osworkflow
osworkflow完全用java语言编写的开放源代码的工作流引擎,具有显著的灵活性及完全面向有技术背景的用户的特点。由opensymphony组织维护,其不遵守XPDL等业务规范,完全使用XML编排业务。面向开发人员。
三 、7大核心接口
| 接口 | 描述 |
|---|---|
| RepositoryService | 提供一系列管理流程部署和流程定义的API |
| RuntimeService | 在流程运行时对流程实例进行管理与控制 |
| TaskService | 对流程任务进行管理,例如任务提醒、任务完成和创建任务等 |
| IdentityService | 提供对流程角色数据进行管理的API,这些角色数据包括用户组、用户及它们之间的关系 |
| ManagementService | 提供对流程引擎进行管理和维护的服务 |
| HistoryService | 对流程的历史数据进行操作,包括查询、删除这些历史数据 |
| FormService | 表单服务 |
四、28张表
| 数据表分类 | 描述 | 对应服务 |
|---|---|---|
| ACT_GE_* | 通用数据表 | |
| ACT_RE_* | 流程定义存储表 | RepositoryService |
| ACT_ID_* | 身份信息表 | IdentityService |
| ACT_RU_* | 运行时数据表 | RuntimeService、TaskService |
| ACT_HI_* | 历史数据表 | HistoryService |
-
流程部署相关表 act_re_deployement 部署对象表
act_rep_procdef 流程定义表
act_ge_bytearray 资源文件表
act_ge_prperty 主键生成策略表(对于部署对象表的主键ID) -
流程实例相关表 act_ru_execution 正在执行的执行对象表(包含执行对象ID和流程实例ID,如果有多个线程可能流程实例ID不一样)
act_hi_procinst 流程实例历史表
act_hi_actinst 存放历史所有完成的任务 -
Task 任务相关表 act_ru_task 代办任务表 (只对应节点是UserTask的)
act_hi_taskinst 代办任务历史表 (只对应节点是UserTask的)
act_hi_actinst 所有节点活动历史表 (对应流程的所有节点的活动历史,从开始节点一直到结束节点中间的所有节点的活动都会被记录) -
流程变量表 act_ru_variable 正在执行的流程变量表
act_hi_variable 流程变量历史表
文章作者 无剑_君 上次更新 2022-06-16
转载自 csdn