Activiti 6.x【12】剩下的一些组件

简介: 版权声明:转载注明出处就OK的说,有些东西会转载,都会注明的说= =如果有冒犯麻烦见谅 https://blog.csdn.net/Pan1458689676/article/details/82731811 ...
版权声明:转载注明出处就OK的说,有些东西会转载,都会注明的说= =如果有冒犯麻烦见谅 https://blog.csdn.net/Pan1458689676/article/details/82731811

剩下的一些组件


主要讲解Gateway,Connection,Artifacts以及Container部分的用法

Gateway

这里写图片描述

关于网关前面多多少少都有涉及。分为四种网关。下面将逐一描述。前三种网关主要以流程变量的方式做判断。

这里写图片描述

ExclusiveGateway

单行网关会执行第一个符合条件的

【官网典例】
这里写图片描述

ParallelGateway

并行网关所有通路都执行。类是java的fork join最后会聚合再执行后续步骤。

【官网典例】
这里写图片描述

InclusiveGateway

包容网关所有通路进行判断通过的话通路全部会执行。

【官网典例】
这里写图片描述

EventGateway

事件网关可以简单理解为与捕获中间事件为条件的单行网关。Activiti不支持基于事件的网关后接收任务。

  • 基于事件的网关必须具有两个或更多传出序列流。
  • 基于事件的网关只能连接到intermediateCatchEvent仅类型的元素。
  • 一个intermediateCatchEvent连接到一个基于事件的网关必须有一个单一的进入顺序流。

【官网典例】

这里写图片描述

Connection

这里写图片描述

SequenceFlow

简而言之就是普通的连接线

MessageFlow

简而言之就是跨泳池的连接线

这里写图片描述

Association

一般可以默认为是补偿的事件连接线或者注释的连接线,叫做关联。
这里写图片描述

Artifacts

这里写图片描述

Annotation

简单来说就是注释

这里写图片描述

Container

容器的意思

这里写图片描述

Pool+Lane

泳池与泳道,主要用于流程结构的划分。

这里写图片描述

EventSubProcess

简单说就是,由事件出发的子流程

这里写图片描述

SubProcess

BPMN 2.0区分了常规子流程(通常也称为嵌入式子流程)和呼叫活动(看起来非常相似)。从概念的角度来看,当流程执行到达活动时,两者都将调用子流程。

不同之处在于,调用活动引用了流程定义外部的流程,而子流程嵌入在原始流程定义中。调用活动的主要用例是具有可从多个其他流程定义调用的可重用流程定义。

当进程执行到达调用活动时,将创建一个新执行,该执行是到达调用活动的执行的子执行。然后,该子执行用于执行子进程,可能在常规进程中创建并行子执行。超级执行一直等到子进程完全结束,然后继续原始进程。

【子流程】

子流程只能有一个无启动事件,不允许其他启动事件类型。子流程必须至少有一个结束事件。请注意,BPMN 2.0规范允许省略子流程中的开始和结束事件,但当前的Activiti实现不支持此操作。

SequenceFlow不能跨越子流程边界。

这里写图片描述

【调用活动】

调用活动在Task中

这里写图片描述这里写图片描述

官网demo
这里写图片描述

Transaction

事务子流程是嵌入式子流程,可用于将多个活动分组到事务。事务是一个逻辑工作单元,它允许对一组单独的活动进行分组,从而使它们共同成功或失败。

执行的可能有三种不同的结果:

如果执行既未被取消也未被危险终止,则执行成功。如果事务子进程成功,则使用传出序列流保留它。如果在此过程中稍后抛出补偿事件,则可以补偿执行成功的事务。

事务是取消,如果执行到达取消结束事件。在这种情况下,所有执行都将被终止并删除。然后将单个剩余执行设置为取消边界事件,从而触发补偿。在补偿完成之后,使用取消边界事件的输出序列流来保留事务子过程。

如果抛出错误事件,则事务以危险结束,而不会在事务子流程的范围内捕获。(如果错误发生在事务子进程的边界上,这也适用。)在这种情况下,不执行补偿。

官网Demo

这里写图片描述

结语

虽然没有什么人看,也算是按照自己期望的把activiti知识都过了一遍,基本的常用Task都已经在帖子里面涉及到了,也都有提及。也算是告一段落了。
目录
相关文章
|
7月前
|
XML 移动开发 Java
如何启动flowable的Flowable UI画工作流程图
如何启动flowable的Flowable UI画工作流程图
131 0
|
7月前
activiti5 taskService.setVariable与taskService.setVariableLocal区别
activiti5 taskService.setVariable与taskService.setVariableLocal区别
166 0
activiti5 taskService.setVariable与taskService.setVariableLocal区别
|
数据库
23activiti - 流程变量(流程图)
23activiti - 流程变量(流程图)
49 0
29activiti - 流程变量(总结)
29activiti - 流程变量(总结)
74 0
|
XML 存储 API
Flowable入门:开启你的第一个Flowable BPMN程序(二)
Flowable入门:开启你的第一个Flowable BPMN程序
573 0
|
XML Java API
Flowable入门:开启你的第一个Flowable BPMN程序(一)
Flowable入门:开启你的第一个Flowable BPMN程序
569 0
|
XML JavaScript 数据格式
Bpmn 节点与连线部分属性整理
Bpmn 节点与连线部分属性整理
1634 0
|
XML 数据可视化 Java
Activiti-ProcessEngine创建方式和Servcie介绍
Activiti-ProcessEngine创建方式和Servcie介绍
Activiti-ProcessEngine创建方式和Servcie介绍
activiti通过扩展点重写节点行为
在activit项目中,有时需要重写节点的behaviour,但如果将代码反编译,会为后续升级,及项目打包带为不方便。   其实 acitivit已经提供了扩展点重写节点行为。
1227 0