Leo's blog Leo's blog
首页
  • Java基础

    • JavaSE
    • JVM
    • Spring
  • Java进阶

    • SSM
    • SpringBoot
    • SpringCloud
    • SpringCloud Alibaba
  • 中间件

    • Nginx
    • Redis
    • FastDFS
    • RocketMQ
  • 框架

    • Netty
    • Shiro
    • Activiti
  • 数据库

    • MySQL
    • Oracle
  • 微服务

    • Dubbo
    • Nacos
  • 大叔据

    • ELK
    • Hadoop
  • 工具

    • Jenkins
    • Docker
  • 算法

    • 数据结构与算法
    • 设计模式
  • 计算机科学

    • 计算机网络
    • 操作系统原理
    • Linux
    • 网络安全
  • IDLE

    • IntelliJ IDEA
    • Visual Studio Code
  • 野生技能

    • Git
  • 娱乐

    • 读书
    • 电影
    • 音乐
    • 节目
  • 投资

    • 宏观
    • 周期
    • 加密货币
    • 量化交易
  • 思考

    • 观点
    • 随笔
  • 网站

    • 日常访问
    • 学习资源
  • 博客

    • 推荐博客
    • 友情链接
关于
  • 分类
  • 标签
  • 归档
GitHub

Leo Lee

Use Java with love.
首页
  • Java基础

    • JavaSE
    • JVM
    • Spring
  • Java进阶

    • SSM
    • SpringBoot
    • SpringCloud
    • SpringCloud Alibaba
  • 中间件

    • Nginx
    • Redis
    • FastDFS
    • RocketMQ
  • 框架

    • Netty
    • Shiro
    • Activiti
  • 数据库

    • MySQL
    • Oracle
  • 微服务

    • Dubbo
    • Nacos
  • 大叔据

    • ELK
    • Hadoop
  • 工具

    • Jenkins
    • Docker
  • 算法

    • 数据结构与算法
    • 设计模式
  • 计算机科学

    • 计算机网络
    • 操作系统原理
    • Linux
    • 网络安全
  • IDLE

    • IntelliJ IDEA
    • Visual Studio Code
  • 野生技能

    • Git
  • 娱乐

    • 读书
    • 电影
    • 音乐
    • 节目
  • 投资

    • 宏观
    • 周期
    • 加密货币
    • 量化交易
  • 思考

    • 观点
    • 随笔
  • 网站

    • 日常访问
    • 学习资源
  • 博客

    • 推荐博客
    • 友情链接
关于
  • 分类
  • 标签
  • 归档
GitHub
  • Nginx

  • Redis

  • Activiti

    • Activiti - 最成熟的JAVA工作流框架
    • Activiti使用手册(1)- 案例与配置
    • Activiti使用手册(2)- Java API
    • Activiti使用手册(3)- 数据库设计
    • Activiti使用手册(4)- Bpmn2规范
      • 0、概述
        • 1)BPMN2.0(Business Process Model and Notation)
        • 2)BPMN2.0元素
      • 1、流程事件
        • 1)分类
        • 2)分类案例
      • 2、流程任务
        • 1)用户任务(User Task)
        • 2)脚本任务(Script Task)
        • 3)服务任务 (Java Service Task)
      • 6、顺序流和网关
        • 1)顺序流
        • 2)网关
        • 1)单一网关顺序流
        • 2)并行网关
        • 3)包容性网关
        • 4)基于事件的网关
      • 7、子流程
        • 1)子流程(Sub-Process)
        • 2)事件子流程(Event Sub-Process)
        • 3)事务子流程(Transaction Sub-Process)
        • 4)调用子流程(Call Activiti)
  • MySQL

  • Oracle

  • Docker

  • 基础设施
  • Activiti
leee
2020-06-11

Activiti使用手册(4)- Bpmn2规范

# Activiti使用手册(4)- Bpmn2.0规范

# 六、Bpmn2.0规范

Activiti流程事件分类,参考Bpmn2.0国际标准:BPMN2_0_Poster_CHN.PDF

# 0、概述

# 1)BPMN2.0(Business Process Model and Notation)

  • 是一套业务流程模型与符号建模标准
  • 精准的执行语义来描述元素的操作
  • 以XML为载体,以符号可视化业务

# 2)BPMN2.0元素

image.png

  • 流对象、连接对象、数据

image.png

  • 泳道、描述对象

image.png

# 1、流程事件

  • 事件分类方式
    • 位置分类
    • 特性分类
    • 事件定义分类

# 1)分类

image.png

# 2)分类案例

# 举例① 定时事件

  • 定时开始事件

image.png

  • 定时边界事件

image.png

# 举例② 错误事件

  • 错误事件定义

image.png

  • 错误边界事件

image.png

# 举例③ 信号消息事件

  • 信号开始事件

image.png

  • 信号中间事件

image.png

  • 消息事件定义

image.png

# 2、流程任务

  • 流程任务分类

image.png

# 1)用户任务(User Task)

# ①定义及示例

image.png

# ②通过配置文件配置用户任务

  • 用户任务 - 候选人/组 设置
    • BPMN2.0方式

image.png

  • Activiti方式

image.png

image.png

  • 用户任务 - 代理人设置(真正操作的人)
    • BPMN2.0方式

image.png

  • Activiti方式

image.png

image.png

# ③通过任务监听器自定义配置

image.png

image.png

# 2)脚本任务(Script Task)

image.png

image.png

  • Activiti支持三种脚本
    • JUEL脚本(默认)
    • Geoovy脚本(依赖groovy-all.jar)
    • JavaScript脚本

# ①脚本任务内置变量

image.png

# ②脚本任务设置返回值

image.png

image.png

# 3)服务任务 (Java Service Task)

image.png

image.png

  • 服务任务(Java Service Task)执行Java程序的方法
    • 执行实现JavaDelegate或ActivityBehavior的类
    • 执行一个javaDelegate对象的表达式,通常是spring配置的Bean
    • 执行调用方法表达式和值表达式

# ①执行实现JavaDelegate或ActivityBehavior的类

image.png

# ②javaDelegate注入属性

image.png

# ③执行一个javaDelegate表达式

image.png

# ④执行调用方法表达式和值表达式

image.png

# ⑤javaDelegate抛出错误事件

image.png

# 6、顺序流和网关

# 1)顺序流

image.png

# 2)网关

  • 分类

    • 单一网关(Exclusive Gateway)
    • 并行网关(Parallel Gateway)
    • 包容性网关(Inclusive Gateway)
    • 基于事件网关(Event-based Gateway)(暂停,捕获事件)
  • 符号

image.png

# 1)单一网关顺序流

# ①示例

image.png

# ②定义文件

image.png

# 2)并行网关

# ①示例

image.png

# ②流程定义

image.png

# 3)包容性网关

# ①示例

image.png

# ②流程定义

暂不提供

# 4)基于事件的网关

# ①示例

image.png

# ②流程定义

暂不提供

# 7、子流程

Sub-Processes and Call Activities

  • 分类

    • 子流程(Sub-Process)
    • 事件子流程(Event Sub-Process)
    • 事务子流程(Transaction Sub-Process)(试验)
    • 调用子流程(Call Activiti)
  • 图示

image.png

# 1)子流程(Sub-Process)

# ①示例

image.png

# 2)事件子流程(Event Sub-Process)

# ①示例


image.png

# 3)事务子流程(Transaction Sub-Process)

# ①示例

image.png

# 4)调用子流程(Call Activiti)

# ①示例

image.png

附件

  1. BPMN2_0_Poster_CHN.PDF ,Bpmn2.0国际标准海报,BPMN2_0_Poster_CHN
编辑
上次更新: 2020/06/11, 15:06:00
Activiti使用手册(3)- 数据库设计
MySQL 用户基本操作笔记

← Activiti使用手册(3)- 数据库设计 MySQL 用户基本操作笔记 →

最近更新
01
linux手动RPM安装gcc,g++
06-11
02
config - 通过@ConfigurationProperties读取yml配置
06-11
03
CentOS 安装配置 Nginx
06-11
更多文章>
Theme by Vdoing | Copyright © 2020-2020 Leo Lee | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式