1. 前言
工作流(Workflow)是一种管理和自动化业务过程的方法,它将一系列任务或活动按照预定义的规则和顺序组织起来,以实现特定的业务目标。工作流的概念旨在提高工作效率、减少错误、加强控制并优化业务流程。
2. 介绍
Activiti
是一个工作流引擎, Activiti
可以将业务系统中复杂的业务流程抽取出来,使用专门的 建模语言 (BPMN2.0
)进行定义。业务系统按照预先定义的流程进行执行,实现了业务系统的业务流程由 Activiti
进行管理,减少业务系统由于流程变更进行系统升级改造的工作量,从而提高系统的健壮性,同时也减少了系统开发维护成本。
3. 官网
地址: Open Source Business Automation | Activiti
4. 核心机制
- 业务流程图要规范化,需要遵守一套标准。
- 业务流程图本质上就是一个
XML
文件,而XML
可以存放所要的数据。 - 读取业务流程图的过程就是解析
XML
文件的过程。 - 读取一个业务流程图的结点就相当于解析一个
XML
的结点,进一步将数据插入到MySQL
表中,形成一条记录。 - 将一个业务流程图的所有节点都读取并存入到
MySQL
表中。 - 后面只要读取
MySQL
表中的记录就相当于读取业务流程图的一个节点。 - 业务流程的推进,后面就转换为读取表中的数据,并且处理数据,结束的时候这一行数据就可以删除了。
5. BPMN
BPMN
全称为 Business Process Model and Notation
(业务流程模型与符号),是一种图形化的建模语言,用于描述业务流程的结构、流转逻辑和参与者。它是业务流程管理( BPM
)领域的一个重要国际标准,目前广泛采用的版本是 BPMN 2.0
,由 OMG(Object Management Group)
组织发布和维护。
5.1. 核心要素
5.1.1. 流程元素
BPMN
定义了一系列图形符号,用来表示业务流程中的不同组成部分,包括但不限于:
- 开始事件(Start Event): 表示流程的起点。
- 结束事件(End Event): 表示流程的终点。
- 任务(Task): 代表需要完成的工作单元,可以是手动任务或自动任务。
- 网关(Gateway): 用于控制流程的分支、汇聚或决策,如排他网关、并行网关等。
事件(Event): 除了开始和结束事件外,还有中间事件(如时间、信号、条件等)来处理流程中的异常或特定条件。
泳道和池(Lane and Pool): 用来组织和分类流程中的参与实体,如部门、角色或系统。
5.1.2. 连接元素
用来连接流程元素,展示流程的流向。
- 顺序流(Sequence Flow): 表示活动之间的流程走向,带箭头的线段。
- 消息流(Message Flow): 在不同泳道或池之间传递消息的流,通常用于表示跨组织或系统的交互。
5.1.3. 数据和消息
BPMN
还支持定义数据对象、输入输出以及消息的交换,以描述流程中的数据处理和通信。
5.1.4. 协作
BPMN
支持定义协作图,展示多个参与者的交互流程,特别适用于多泳道或跨组织的复杂流程。
本文隶属于 【个人专栏】:04 Activiti 7📋📋📋
到这里 00 Activiti 7:介绍 就结束了!!!🎉🎉🎉
后续接 01 Activiti 7:使用步骤 📣📣📣
欢迎小伙伴们学习和指正!!!😊😊😊
祝大家学习和工作一切顺利!!!😎😎😎