Flowable全功能完整案例演示

Flowable 工作流演示案例


​ 当前工程是基于 Flowable 6.8.0 的 demo 演示工程,涵盖了Flowable 几乎所有功能的单元测试案例。每一个案例都有配套的流程定义文件与完善的注释说明、踩坑事项与解决办法。便于新手快速入门,一键调试。
在这里插入图片描述

技术栈

  • SpringBoot 2.3.12.RELEASE
  • mybatis-plus-boot-starter 3.5.4
  • MySQL 8
  • Hutool 5.3.5
  • Flowable 6.8.0
  • groovy 2.0.5
  • Drools 7.30.0.Final
  • Camel 3.14.0

工程目录结构

工程概览图

在这里插入图片描述

目录结构说明

├─doc                                						#文档								
│  ├─document                        						#部分笔记
│  ├─images                          						#图片
│  ├─jars                            						#不好下载的jar
│  │  └─mule                         
│  └─sql                             						#含有表字段说明注释的数据库脚本
├─src                                                       #
│  ├─main                                                   #
│  │  ├─java                                                #
│  │  │  └─cn                                               #
│  │  │      └─blnp                                         #
│  │  │          └─net               						#
│  │  │              └─flowable      						#
│  │  │                  ├─config    						#项目集成配置,含Flowable、Drools、Camel等
│  │  │                  ├─consumer  						#
│  │  │                  ├─controller                       #
│  │  │                  └─mapper    						#mybatis接口
│  │  └─resources                    						#
│  │      ├─db                                              #
│  │      │  └─changelog                                    #
│  │      ├─dmn                                             #决策表设计文件
│  │      ├─drools                                          #Drools规则文件
│  │      ├─flow                                            #流程定义设计文件
│  │      │  └─images                                       #流程定义相关图片信息
│  │      └─mybatis                                         #mybatis相关xml
│  │          └─mapper                                      #
│  └─test                                                   #
│      └─java                                               #
│          └─cn                                             #
│              └─blnp                                       #
│                  └─net                                    #
│                      └─flowable                           #
│                          ├─api                            #Flowable 基础API演示
│                          │  ├─history                     #历史模块API
│                          │  ├─identity                    #身份管理API
│                          │  ├─manager                     #管理服务API
│                          │  ├─repository                  #存储服务API
│                          │  ├─runtime                     #运行时服务API
│                          │  ├─server                      #工作流引擎服务API
│                          │  └─task                        #任务服务API
│                          ├─demo                           #
│                          ├─event                          #Flowable 事件案例模块
│                          │  ├─base                        #流程引擎事件概述与事项
│                          │  │  ├─message                  #消息事件
│                          │  │  ├─other                    #取消事件、终止事件、补偿事件
│                          │  │  ├─signal                   #信号事件
│                          │  │  └─timer                    #定时事件
│                          │  ├─bound                       #边界事件综合案例
│                          │  │  ├─cancel                   #边界取消事件
│                          │  │  ├─compensation             #边界补偿事件
│                          │  │  ├─conditions               #条件边界事件
│                          │  │  ├─error                    #错误边界事件
│                          │  │  ├─message                  #消息边界事件
│                          │  │  ├─signal                   #信号边界事件
│                          │  │  ├─timer                    #定时器边界事件
│                          │  │  ├─upgrade                  #升级边界事件
│                          │  │  └─variables                #变量监听器边界事件
│                          │  ├─end                         #结束事件综合案例
│                          │  │  ├─cancel                   #取消结束事件
│                          │  │  ├─empty                    #空结束事件
│                          │  │  ├─error                    #错误结束事件
│                          │  │  ├─termination              #终止结束事件
│                          │  │  └─upgrade                  #升级结束事件
│                          │  ├─middle                      #中间事件综合案例
│                          │  │  ├─compensate               #补偿中间抛出事件
│                          │  │  ├─conditional              #条件中间捕获事件
│                          │  │  ├─empty                    #空中间抛出事件
│                          │  │  ├─message                  #消息中间捕获事件
│                          │  │  ├─signal                   #信号捕获和信号抛出中间事件
│                          │  │  ├─timer                    #定时器中间捕获事件
│                          │  │  ├─upgrade                  #升级中间抛出事件
│                          │  │  └─variable                 #变量监听器中间捕获事件
│                          │  └─start                       #开始事件综合案例
│                          │      ├─conditions              #条件开始事件
│                          │      ├─empty                   #空开始事件
│                          │      ├─error                   #错误开始事件
│                          │      ├─message                 #消息开始事件
│                          │      ├─signal                  #信号开始事件案例
│                          │      ├─timer                   #定时器开始事件
│                          │      ├─upgrade                 #升级开始事件
│                          │      └─variables               #变量监听开始事件
│                          ├─ext                            #扩展案例
│                          │  ├─activity                    #调用活动案例
│                          │  ├─child                       #子流程综合案例
│                          │  │  ├─event                    #事件子流程演示案例
│                          │  │  ├─inline                   #内嵌子流程
│                          │  │  └─transaction              #事务子流程
│                          │  └─pool                        #泳池与泳道的用法
│                          ├─identity                       #身份服务案例
│                          │  ├─group                       #用户组案例
│                          │  ├─relation                    #关联关系
│                          │  └─user                        #用户案例
│                          ├─listen                         #监听器综合案例
│                          │  ├─exec                        #执行监听器演示案例
│                          │  ├─global                      #全局事件监听器案例
│                          │  │  ├─events                   #全局事件演示
│                          │  │  └─log                      #日志监听器案例
│                          │  └─task                        #任务监听器案例
│                          │      └─listener                #
│                          ├─multiple                       #多实例综合案例
│                          │  ├─child                       #子流程多实例实战
│                          │  ├─service                     #服务任务多实例实战
│                          │  └─user                        #用户任务多实例实战
│                          ├─other                          #其它功能
│                          │  └─camel                       #Camel基本使用
│                          ├─process                        #流程部署知识点
│                          ├─task                           #流程任务综合应用案例
│                          │  ├─drools                      #Drools规则任务案例
│                          │  ├─ext                         #扩展任务案例
│                          │  │  ├─camel                    #Camel任务组合案例
│                          │  │  ├─decision                 #决策任务案例
│                          │  │  ├─http                     #Http任务案例
│                          │  │  ├─mail                     #邮件任务案例
│                          │  │  ├─shell                    #Shell任务案例
│                          │  │  ├─web                      #web service任务案例
│                          │  │  └─worker                   #外部工作者任务案例
│                          │  ├─manually                    #手动任务案例
│                          │  ├─receive                     #接收任务案例
│                          │  ├─script                      #脚本任务案例
│                          │  ├─service                     #服务任务案例
│                          │  │  ├─error                    #
│                          │  │  ├─execute                  #
│                          │  │  ├─introduce                #
│                          │  │  ├─property                 #
│                          │  │  └─server                   #
│                          │  └─user                        #用户任务案例
│                          └─transfer                       #顺序流与网关
│                              ├─gateway                    #网关
│                              │  ├─event                   #事件网关
│                              │  ├─exclusive               #排他网关
│                              │  ├─inclusive               #包容网格
│                              │  └─parallel                #并行网关
│                              └─sequence                   #顺序流
│                                  ├─condition              #
│                                  ├─defaults               #
│                                  └─standard               #

部分案例举例

错误边界事件演示

在这里插入图片描述
在这里插入图片描述

取消结束事件演示

在这里插入图片描述

在这里插入图片描述

定时器中间捕获事件演示

在这里插入图片描述
在这里插入图片描述

错误开始事件

在这里插入图片描述
在这里插入图片描述

调用子流程演示

在这里插入图片描述
在这里插入图片描述

执行监听器案例

在这里插入图片描述
在这里插入图片描述

更多详见单元测试用例代码!

截图预览

数据库
在这里插入图片描述

工程预览
在这里插入图片描述

流程模型

在这里插入图片描述

源代码

详见:码云

技术交流

有任何技术问题,欢迎一起加群交流探讨!

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值