Activiti工作流引擎表关系重点知识详解及简单认知

1、Activiti工作流引擎是什么,使用它有什么好处,使用它的场景描述,认识它?

     activiti的自我介绍在本文中就不需要做了,或许在面试中需要,关于怎么使用activiti,主要有三步曲:

                第一步: 定义流程模型     (在同一项目中,流程可以定义多个)

                第二步: 部署定义好的流程模型    (在同一项目中,可以同时部署多个流程,部署后的流程会生成流程身份唯一key标识,这样当你想使用哪个流程,就使用哪个流程的key)

                第三步: 使用流程模型  (要想使用部署后的流程模型,就离不开activiti引擎框架所提供的七大服务接口,都是使用这七大服务接口来完成工作的)

                

    

2、前面简单介绍了activiti的使用,引出了一个问题,activiti的七大服务接口有哪些?

    

        在说七大接口之前,咱们先说一个核心基础引擎接口

/**
ProcessEngine的表白:  它把服务的七大接口在本类中都实例化了,并单独
为每一个服务接口提供了一个实例化的方法,所以说通过它可以获取所有的服务接口对象,
它使用了外观设计模式,关于设计模式在此处不多说,我只是看他源码结构的时候发现了而已。
*/ ProcessEngine processEngine // 流程引擎接口

       

 

        现在可以介绍有哪七大服务接口了,闪亮登场,分别是

RepositoryService:提供一系列管理流程部署和流程定义的API。

RuntimeService:在流程运行时对流程实例进行管理与控制。

TaskService:对流程任务进行管理,例如任务提醒、任务完成和创建任务等。

HistoryService:对流程的历史数据进行操作,包括查询、删除这些历史数据。

IdentityService:提供对流程角色数据进行管理的API,这些角色数据包括用户组、用户及它们之间的关系。

ManagementService:提供对流程引擎进行管理和维护的服务。

FormService:表单服务。

  

 

 

        介绍完了七大接口,就不得不说activiti框架所提供的数据表了,activiti6有28张数据表,如下所示

 

     

3、我想就上面介绍它的数据表的话,不弄清楚这表与表之间的关系,在使用它的时候,会一头雾水,所以我们来认清表与表的关系?

 

     1、先从定义模型表 act_re_model 开始 ,从图中看关系一清二楚

 

 

       2、再次看已部署的流程定义表 act_re_prodecf ,得知它与模型定义表没有一点关系。

 

 

  3、接下来就可以看运行时流程执行实例表,act_ru_execution , 可以看出来它与很多表还是有关联的。

 

4、最后在看一下运行时任务表  act_ru_task ,得知它与运行时用户关系是关联的。

 

 

 各位看着还行的话,就给个赞吧,你们的点赞就是我的收获,O(∩_∩)O哈哈~。

 

posted @ 2020-03-31 11:29  东哥的篮球鞋  阅读(1208)  评论(0编辑  收藏  举报