Activiti7入门

Activiti7入门

一、Activiti7数据库表结构

ACT_RE: 'RE'表示repository。这个前缀包含了流程定义和流程静态资源(图片,规则,等等)
ACT_RU: 'RU'表示runtime。包含流程实例,任务,变量,异步任务等运行时的数据,Activiti只在流程实例执行过程中保存这些数据,在流程结束后会将其记录删除。
ACT_HI: 'HI'表示history。包含历史数据,比如历史流程实例,变量,任务等等。
ACT_GE: 'GE'表示general。通用数据。
ACT_ID_*: 'ID'表示identity。这些表包含标识的信息,如用户,用户组,等等。

表名 解释
ACT_GE_BYTEARRAY 二进制数据表,存储通用的流程定义和流程资源。
ACT_GE_PROPERTY 系统相关属性,属性数据表存储整个流程引擎级别的数据,初始化表结构时,会默认插入三条记录。
ACT_HI_ACTINST 历史节点表
ACT_HI_ATTACHMENT 历史附件表
ACT_HI_COMMENT 历史意见表
ACT_HI_DETAIL 历史详情表,提供历史变量的查询
ACT_HI_IDENTITYLINK 历史流程人员表
ACT_HI_PROCINST 历史流程实例表
ACT_HI_TASKINST 历史任务实例表
ACT_HI_VARINST 历史变量表
ACT_ID_GROUP 用户组信息表
ACT_ID_INFO 用户扩展信息表
ACT_ID_MEMBERSHIP 用户与用户组对应信息表
ACT_ID_USER 用户信息表
ACT_RE_DEPLOYMENT 部署单元信息表
ACT_RE_MODEL 流程设计模型表
ACT_RE_PROCDEF 流程定义数据表
ACT_RU_EVENT_SUBSCR 运行时事件 throwEvent、catchEvent 时间监听信息表
ACT_RU_EXECUTION 运行时流程执行实例
ACT_RU_IDENTITYLINK 运行时流程人员表,主要存储任务节点与参与者的相关信息
ACT_RU_JOB 运行时定时任务数据表
ACT_RU_TASK 运行时任务节点表
ACT_RU_VARIABLE 运行时流程变量数据表
ACT_EVT_LOG 事件日志
ACT_PROCDEF_INFO 流程定义的动态变更信息

二、Activiti中各个service的作用

Service 作用
ManagerService 提供了对 Activiti 流程引擎的管理和维护功能
RuntimeService 执行管理,包括启动,推进,删除流程实例等操作
TaskService 任务管理
HistoryService 历史管理(执行完的数据管理)
IdentityService 组织机构管理
FormService 任务表单管理(可选服务)
2.1RepositoryService

是activiti的资源管理类,提供了管理和控制流程发布包和流程定义的操作。使用工作流建模工具设计的业务流程图需要使用此service将流程定义文件的内容部署到计算机。

除了部署流程定义以外还可以:查询引擎中的发布包和流程定义。

暂停或激活发布包,对应全部和特定流程定义。 暂停意味着它们不能再执行任何操作了,激活是对应的反向操作。获得多种资源,像是包含在发布包里的文件, 或引擎自动生成的流程图。

获得流程定义的pojo版本, 可以用来通过java解析流程,而不必通过xml。

2.2RuntimeService

Activiti的流程运行管理类。可以从这个服务类中获取很多关于流程执行相关的信息

2.3TaskService

Activiti的任务管理类。可以从这个类中获取任务的信息。

2.4HistoryService

Activiti的历史管理类,可以查询历史信息,执行流程时,引擎会保存很多数据(根据配置),比如流程实例启动时间,任务的参与者, 完成任务的时间,每个流程实例的执行路径,等等。 这个服务主要通过查询功能来获得这些数据。

2.5ManagementService

Activiti的引擎管理类,提供了对 Activiti 流程引擎的管理和维护功能,这些功能不在工作流驱动的应用程序中使用,主要用于 Activiti 系统的日常维护。

三、工作流引擎

ProcessEngine对象,这是Activiti工作的核心。负责生成流程运行时的各种实例及数据、监控和管理流程的运行。工作流引擎为我们提供相关规则概念的定义,给我们提供了相关的API来调用这个引擎去执行流程。流程的操作实际上就是工作流引擎提供相关的api我们去调用它。

3.1职责:
  1. 定义流程,也就是给我们提供某种规范来定义规则,以及如何定义一个流程的这种规范,同时我们可以根据工作流引擎提供的相关概念来定义更为复杂的流程,这就是工作流引擎做的第一件事叫做定义流程。

  2. 执行流程,也就是工作流引擎需要解释这个规则,还要负责流程,它相当于流程的调度者,监控每个流程的执行情况,并将流程操作发往下一步,或者根据条件休眠或终止流程的过程就叫做执行流程。

引用:https://www.jianshu.com/p/7fef2679a26b

四、BPMN2.0模型与符号

image

五、流程操作

5.1流程部署

将在设计器中设计好的流程图部署到Activiti数据库中,就是我们讲的流程部署。

通过调用Activiti的API将流程定义的bpmn和png两个文件添加到activiti中。
部署后的数据存放到3张表中:

表名 含义
act_re_prodef 流程定义表
act_re_deployment 流程定义部署表
act_ge_bytearray 流程资源表

链接好文:
https://dpb-bobokaoya-sm.blog.csdn.net/article/details/121866853?spm=1001.2014.3001.5502

posted @ 2022-05-09 19:24  __先森  阅读(400)  评论(0编辑  收藏  举报