activiti系列之数据表

Activiti继承自jBPM4,在表结构设计方面也遵循运行时与历史数据的分离,这样的设计可以快速读取运行时数据,仅当需要查询历史数据时再从专门的历史数据表中读取

1、通用数据表(RepositoryService

以“act_ge”开头(general)

1.1、  act_ge_bytearray (资源表)

保存字符串、流程文件内容、流程图片。一次部署可以添加多个资源,资源会被保存到资源表(act_ge_bytearray)中。

1.2、act_ge_property(属性表)

工作流的id算法和版本  用来生成下一个主键信息

2、流程存储表(RepositoryService)

以"act_re"开头 (repository)

2.1、act_re_deployment(部署表)

流程部署表,一次部署可以添加多个资源,资源会被保存到资源表(act_ge_bytearray)中;而部署的信息,则保存到部署表中

2.2、act_re_procdef(流程定义表)

流程定义表,如果发布部署的文件是流程文件,除了将内容保存到资源表外,还会解析流程文件的内容,形成特定的流程定义数据,保存到此表中

3、身份表(identityService

身份表以"act_id"开头 (identity)

3.1、act_id_user(用户表)

保存用户数据

3.2、act_id_info(用户信息表)

保存用户信息和用户账号

3.3、act_id_group(用户组)

用于保存用户组信息

3.4、act_id_membership(用户用户组关系表)

表格字段:

USER_ID 用户id 非空

GROUP_ID  用户组id 非空

4、流程运行时的数据表

以"act_ru"开头(runtime)

用来保存流程在运行过程中产生的数据,例如 流程实例、执行流、任务

4.1、act_ru_execution(流程实例表)

当流程启动后,会产生一个流程实例,同时会产生相应的执行流,那么流程实例和执行流数据均会被保存到act_ru_execution表中流程启动一次只要没有执行完,就会有一条数据 

本次任务完成则会删除在act_ru_execution表中的数据

4.2、act_ru_task(流程任务表)

保存流程在运行过程中所产生的任务数据

4.3、act_ru_variable( 正在执行的流程变量表)

用来保存在整个流程执行过程中用到的变量信息。例如流程实例参数、执行流参数和任务参数

5、历史数据表(HistoryService

5.1、act_hi_procinst(流程实例表)

保存流程的历史数据。只要流程被启动,就会将流程实例的数据写入act_hi_procinst。act_hi_procinst除了记录基本的流程字段外,还会记录流程的开始活动的id、结束活动的id、开始时间、结束时间。有结束时间也是可以作为判断流程已经结束的标志。

5.2、act_hi_detail(流程明细表)

记录流程执行过程中的参数或者表单数据。将流程引擎的历史数据配置为full,Activiti则会保存流程明细数据

5.3、act_hi_taskinst(历史任务表)

5.4、act_hi_actinst(历史行为表)

5.5、act_hi_attachment(附件表)

5.6、act_hi_comment(评论表)

6、DMN规则引擎表

6.1、act_dmn_deployment(决策部署表)

保存决策数据,类似于流程定义部署,每一次部署,可以添加多份决策文件,向部署表中写入一条部署数据

6.2、act_dmn_decision_table(决策表)

可以将决策看做流程定义,决策文件中保存着决策表,部署时会解析决策文件中的决策模型并将其保存到act_dmn_decision_table中

6.3、act_dmn_deployment_resource(部署资源部)

类似于流程引擎资源部

 

 

Activiti在删除流程定义、删除任务和删除流程实例时,均会将删除的数据保存到历史数据中,初次外,已经完成的流程实例以及相关数据,都会保持到历史数据中,如果要对这些数据进行管理的话,就需要用到HistoryService组件了。

,Activiti在整个流程执行过程中,会把所有相关的信息,都历史表中保存,因此HistoryService该组件的查询方法特别的丰富

   使用HistoryService的createHistoricProcessInstanceQuery()方法就可以得到HistoricProcessInstanceQuery对象,该对象主要用于流程实例的历史数据查询。对于流程实例,不管流程是否完成,都会保存到ACT_HI_PROCINST表中

 

 

 

 

 

 

你可能感兴趣的:(Activiti)