工作流JBPM流程图说明

文章目录

    • [5☃️ 相关概念](#5☃️ 相关概念)
    • [6 ☃️流程图说明](#6 ☃️流程图说明)
      • [6.0 ❄️❄️快速上手](#6.0 ❄️❄️快速上手)
      • [6.1 ❄️❄️活动Activity / 节点Node](#6.1 ❄️❄️活动Activity / 节点Node)
        • [6.1.1 start 开始活动](#6.1.1 start 开始活动)
        • [6.1.2 end 结束活动](#6.1.2 end 结束活动)
        • [6.1.3 task 任务活动](#6.1.3 task 任务活动)
        • [6.1.4 decision 判断活动](#6.1.4 decision 判断活动)
        • [6.1.5 fork/join 分支/聚合活动](#6.1.5 fork/join 分支/聚合活动)
      • [6.2 ❄️❄️流转 Transition / 连线 (单向箭头)](#6.2 ❄️❄️流转 Transition / 连线 (单向箭头))
        • [6.2.1 开始活动](#6.2.1 开始活动)
        • [6.2.2 结束活动](#6.2.2 结束活动)
        • [6.2.3 其他活动](#6.2.3 其他活动)

5☃️ 相关概念

流程定义:Process definition

一个流程的步骤说明。如一个请假流程、报销流程、借款流程等。是一个规则。

流程实例:Process instance

代表流程定义的一次执行。如张三昨天按照请假流程请了一次假。一个流程实例包括了所有运行的阶段,其中最典型的属性就是跟踪当前节点的指针。

Execution 执行

一般情况下,一个流程实例是一个执行树的根节点。

使用树状结构的原因在于,这一概念只有一条执行路径,使用起来更简单。业务API不需要了解流程实例和执行之间功能的区别。因此,API里只有一个执行类型来引用流程实例和执行。

6 ☃️流程图说明

6.0 ❄️❄️快速上手

如图:在工程根路径下新建一个"Source Folder"文件夹

在上一步新建的文件夹里新建文件,如下:

建好后,打开 如下图所示:

画个简单的 图:

上图简单的说明:

当上图的活动部署并启动(部署和启动下文再细说)后,活动先到达部门审批,此时,只有"小李"(画流程图时指定的部门审批人)能看见自己的任务列表有该任务,流程下一步的 "经理"在自己的任务列表里是看不见该任务的。

当"小李"办理了该任务后,该任务将不会在"小李"的任务列表显示,而此时"经理"的任务列表里就有了该任务了。

"小李"办理了该任务后,该流程结束,该任务将不会在任何人的任务列表显示。

6.1 ❄️❄️活动Activity / 节点Node

我们所用到的 活动 都在上图中了,下面介绍经常用到的活动的含义:

6.1.1 start 开始活动

代表流程的开始边界,一个流程有且只能有一个 start 活动。开始活动只能指定一个 Transition 。在流程实例启动后,会自动的使用这个唯一的 Transition 离开开始活动,到下一个活动。

6.1.2 end 结束活动

代表流程的结束边界,可以有多个,也可以没有。如果有多个,则达到任一个结束活动,整个流程就都结束了;如果没有,则到达最后面那个没有 Transition 的活动,流程就结束了。

6.1.3 task 任务活动

等待补充

6.1.4 decision 判断活动

等待补充

6.1.5 fork/join 分支/聚合活动

这是多个分支并行(同时)执行的,并且所有的分支 Execution 都到 join 活动后才向后执行。

展现在图中就是:task2、task3 和 task4 这三个任务都执行完毕,流程才继续往 task5 走。task2、task3 和 task4 中任意一个没有完成,任务都不会往下走。

注意: fork 和 join 是配合在一起使用的。

6.2 ❄️❄️流转 Transition / 连线 (单向箭头)

6.2.1 开始活动

开始活动中只能有一个 Transition 。

6.2.2 结束活动

结束活动中没有 Transition 。

6.2.3 其他活动

其他活动中都是可以有1个或者n个 Transition 。

相关推荐
折哥的程序人生 · 物流技术专研6 小时前
Java面试85题图解版 · 特别篇:2026后端高频面试题复盘(算法底层逻辑+高并发架构设计全解析,附Java实战代码)
java·网络·数据库·算法·面试
一条泥憨鱼6 小时前
【Redis】数据类型和常用命令
java·数据库·redis·后端·缓存
云烟成雨TD6 小时前
Spring AI Alibaba 1.x 系列【78】沙箱(Sandbox)
java·人工智能·spring
程序员二叉6 小时前
【Java】 异常高频面试题精讲 | 易错点+对比总结
java·开发语言·面试
周航宇JoeZhou7 小时前
JB3-9-SpringAI(二)
java·ai·agent·多智能体·调度·智能体·观察
好家伙VCC7 小时前
Web Components主题热切换方案揭秘
java·前端
慕木沐7 小时前
Google ADK Java 1.0版本 核心机制与实战 Demo
java·开发语言·python
焦虑的说说8 小时前
秒杀系统设计方案
java
许彰午8 小时前
30_Java Stream流操作全解
java·windows·python
qq_2518364578 小时前
基于java Web网络订餐系统设计与实现 源码文档
java·开发语言·前端