最近有录制一套Activiti的详细教程,正好通过博客的形式给大家梳理下Activiti的相关内容。

全网最详细Activiti系列文章,强烈建议收藏加关注哦!

Activiti详细介绍

1 介绍

  Alfresco软件在2010年5月17日宣布Activiti业务流程管理(BPM)开源项目的正式启动,其首席架构师由业务流程管理BPM的专家 Tom Baeyens担任,Tom Baeyens就是原来jbpm的架构师,而jbpm是一个非常有名的工作流引擎,当然activiti也是一个工作流引擎。

  Activiti是一个工作流引擎, activiti可以将业务系统中复杂的业务流程抽取出来,使用专门的建模语言BPMN2.0进行定义,业务流程按照预先定义的流程进行执行,实现了系统的流程由activiti进行管理,减少业务系统由于流程变更进行系统升级改造的工作量,从而提高系统的健壮性,同时也减少了系统开发维护成本。

​ 官方网站:https://www.activiti.org/

1.1 BPM

  BPM(Business Process Management),即业务流程管理,是一种规范化的构造端到端的业务流程,以持续的提高组织业务效率。常见商业管理教育如EMBA、MBA等均将BPM包含在内。

1.2 BPM软件

  BPM软件就是根据企业中业务环境的变化,推进人与人之间、人与系统之间以及系统与系统之间的整合及调整的经营方法与解决方案的IT工具。

  通过BPM软件对企业内部及外部的业务流程的整个生命周期进行建模、自动化、管理监控和优化,使企业成本降低,利润得以大幅提升。

  BPM软件在企业中应用领域广泛,凡是有业务流程的地方都可以BPM软件进行管理,比如企业人事办公管理、采购流程管理、公文审批流程管理、财务管理等。

1.3 BPMN

  BPMN(Business Process Model AndNotation)- 业务流程模型和符号 是由BPMI(BusinessProcess Management Initiative)开发的一套标准的业务流程建模符号,使用BPMN提供的符号可以创建业务流程。

  2004年5月发布了BPMN1.0规范.BPMI于2005年9月并入OMG(The Object Management Group对象管理组织)组织。OMG于2011年1月发布BPMN2.0的最终版本。

具体发展历史如下:

  BPMN 是目前被各 BPM 厂商广泛接受的 BPM 标准。Activiti 就是使用 BPMN 2.0 进行流程建模、流程执行管理,它包括很多的建模符号,比如:

Event

用一个圆圈表示,它是流程中运行过程中发生的事情。

活动用圆角矩形表示,一个流程由一个活动或多个活动组成

Bpmn图形其实是通过xml表示业务流程,上边的.bpmn文件使用文本编辑器打开:

<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test"><process id="myProcess" name="My process" isExecutable="true"><startEvent id="startevent1" name="Start"></startEvent><userTask id="usertask1" name="创建请假单"></userTask><sequenceFlow id="flow1" sourceRef="startevent1" targetRef="usertask1"></sequenceFlow><userTask id="usertask2" name="部门经理审核"></userTask><sequenceFlow id="flow2" sourceRef="usertask1" targetRef="usertask2"></sequenceFlow><userTask id="usertask3" name="人事复核"></userTask><sequenceFlow id="flow3" sourceRef="usertask2" targetRef="usertask3"></sequenceFlow><endEvent id="endevent1" name="End"></endEvent><sequenceFlow id="flow4" sourceRef="usertask3" targetRef="endevent1"></sequenceFlow></process><bpmndi:BPMNDiagram id="BPMNDiagram_myProcess"><bpmndi:BPMNPlane bpmnElement="myProcess" id="BPMNPlane_myProcess"><bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1"><omgdc:Bounds height="35.0" width="35.0" x="130.0" y="160.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="usertask1" id="BPMNShape_usertask1"><omgdc:Bounds height="55.0" width="105.0" x="210.0" y="150.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="usertask2" id="BPMNShape_usertask2"><omgdc:Bounds height="55.0" width="105.0" x="360.0" y="150.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="usertask3" id="BPMNShape_usertask3"><omgdc:Bounds height="55.0" width="105.0" x="510.0" y="150.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1"><omgdc:Bounds height="35.0" width="35.0" x="660.0" y="160.0"></omgdc:Bounds></bpmndi:BPMNShape><bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1"><omgdi:waypoint x="165.0" y="177.0"></omgdi:waypoint><omgdi:waypoint x="210.0" y="177.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2"><omgdi:waypoint x="315.0" y="177.0"></omgdi:waypoint><omgdi:waypoint x="360.0" y="177.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3"><omgdi:waypoint x="465.0" y="177.0"></omgdi:waypoint><omgdi:waypoint x="510.0" y="177.0"></omgdi:waypoint></bpmndi:BPMNEdge><bpmndi:BPMNEdge bpmnElement="flow4" id="BPMNEdge_flow4"><omgdi:waypoint x="615.0" y="177.0"></omgdi:waypoint><omgdi:waypoint x="660.0" y="177.0"></omgdi:waypoint></bpmndi:BPMNEdge></bpmndi:BPMNPlane></bpmndi:BPMNDiagram>
</definitions>

2 使用步骤

2.1 部署activiti

  Activiti是一个工作流引擎(其实就是一堆jar包API),业务系统访问(操作)activiti的接口,就可以方便的操作流程相关数据,这样就可以把工作流环境与业务系统的环境集成在一起。

2.2 流程定义

  使用activiti流程建模工具(activity-designer)定义业务流程(.bpmn文件) 。

  .bpmn文件就是业务流程定义文件,通过xml定义业务流程。

2.3 流程定义部署

  activiti部署业务流程定义(.bpmn文件)。

  使用activiti提供的api把流程定义内容存储起来,在Activiti执行过程中可以查询定义的内容

  Activiti执行把流程定义内容存储在数据库中

2.4 启动一个流程实例

  流程实例也叫:ProcessInstance

  启动一个流程实例表示开始一次业务流程的运行。

  在员工请假流程定义部署完成后,如果张三要请假就可以启动一个流程实例,如果李四要请假也启动一个流程实例,两个流程的执行互相不影响。

2.5 用户查询待办任务(Task)

  因为现在系统的业务流程已经交给activiti管理,通过activiti就可以查询当前流程执行到哪了,当前用户需要办理什么任务了,这些activiti帮我们管理了,而不需要开发人员自己编写在sql语句查询。

2.6 用户办理任务

  用户查询待办任务后,就可以办理某个任务,如果这个任务办理完成还需要其它用户办理,比如采购单创建后由部门经理审核,这个过程也是由activiti帮我们完成了。

2.7 流程结束

  当任务办理完成没有下一个任务结点了,这个流程实例就完成了。

~ Activiti的介绍就介绍到这儿,下篇开始给大家讲解如何具体的来使用。欢迎关注点赞加收藏哦 V_V

2021全网最全Activiti7教程01(Activiti7详细介绍-欢迎收藏)相关推荐

  1. DVWA环境搭建教程-手把手最详细介绍

    DVWA环境搭建教程-手把手最详细介绍 安装phpstudy 安装DVWA 安装环境:win7 安装phpstudy 1.下载安装phpstudy 百度搜索phpstudy,在官网上下载 链接: ht ...

  2. RapidScada免费开源Scada组态软件系列教程4-各模块详细介绍

    RapidScada免费开源Scada组态软件系列教程 系列文章目录 RapidScada免费开源Scada组态软件系列教程1-初识RapidScada RapidScada免费开源Scada组态软件 ...

  3. SWMM从入门到实践教程 01 SWMM软件介绍

    文章目录 1 软件介绍 2 软件面板 2.1 主菜单 2.1.1文件菜单(File) 2.1.2 编辑菜单(Edit) 2.1.3 视图菜单(View) 2.1.4 工程菜单(Project) 2.1 ...

  4. 2021年美国大学生数学建模竞赛(题目详细介绍)

    2021年美赛(详细介绍) 2021年美赛时间为:2月5日-8日 题目类型: MCM问题A(连续) MCM问题B(离散) MCM问题C(数据洞察) ICM问题D(运筹学/网络科学) ICM问题E(环境 ...

  5. 2021全网最全Activiti7教程04(Activiti7进阶篇-欢迎收藏)

      本篇重点给大家介绍下Activiti中的高级内容,比如流程实例,个人任务,流程变量,组任务及网关. 全网最详细Activiti系列文章,强烈建议收藏加关注哦! Activiti进阶篇 1.流程实例 ...

  6. 2021全网最全Activiti7教程02(Activiti7入门使用-欢迎收藏)

    全网最详细Activiti系列文章,强烈建议收藏加关注哦! Activiti的入门应用 1Activiti的基本使用 1.1 创建Maven项目   创建一个普通的Maven项目,并添加相关的依赖 & ...

  7. 【全网唯一一份】【珍贵】2021全网最全长江流域水系干流矢量数据、支流矢量数据shp格式wgs84坐标系

    之前需要数据,然后到处下载,但是发现都缺这缺那的,所有狠下心自己爬取了下来,数据完整.带干流.支流河流名称,共902条河流数据 [如果你下载过其他资源,那你就知道这是你能下载到的,最全的数据了] 下载 ...

  8. 全网最全manim教程,可直接在线修改编译

    源码视频 收集的最全manim代码 manim ce 0.7版本真实编译通过 ManimCommunity 项目地址 可直接点击下面对应的链接,查看生成的视频和源码 可直接在 源码视频 在线修改并编译 ...

  9. 2021全网最全接口测试及常用接口测试工具

    首先,什么是接口呢? 接口一般来说有两种,一种是程序内部的接口,一种是系统对外的接口. 系统对外的接口:比如你要从别的网站或服务器上获取资源或信息,别人肯定不会把数据库共享给你,他只能给你提供一个他们 ...

  10. OpenStack全网最全部署教程

    简单介绍 简单点来说就是一个云,一个属于自己的云平台,openstack的原版是亚马逊云,可以说openstack就是Rackspace和NASA的抄袭产物. 官方点说一个云平台管理的项目,它不是一个 ...

最新文章

  1. 海思AI芯片(Hi3519A/3559A)方案学习(十四)JPEG图片转换成bgr文件
  2. 高德最佳实践:Serverless规模化落地有哪些价值?
  3. [ffmpeg] 解码API
  4. maven中出现 ‘dependencies.dependency.version‘ for xxxx:jar is missing
  5. 前端很慌!React 称霸,Vue 凶猛,TypeScript 威逼 JavaScript
  6. 对于谷歌应用传统的自动语音识别(ASR)系统的解析
  7. Emulator Error: Could not load OpenGLES emulation library: Could not load DLL!
  8. cmd jar java_cmd运行jar报错问题
  9. IE兼容模式文件上传所遇问题解决
  10. 超参数(Hyperparameter)
  11. Safari 14.0 版本安装json插件
  12. 一个炒鸡简单计算拼音声母出现次数及概率程序
  13. clickhouse PARTITION操作
  14. Count Inversion逆序对数问题
  15. 我的世界android制作教程,我的世界手机版红石教程 十进二编码器制作方法攻略...
  16. 操作系统基本原理---进程管理
  17. SQL server 和 mysql 自动排序生成序列号
  18. Ubuntu22.04更换国内镜像源(阿里、网易163、清华、中科大)
  19. Android应用程序icon规范
  20. 全网心疼的鸿星尔克,距离安踏还差两个李宁

热门文章

  1. 读取QQ ClientKey失败分析
  2. uniapp微信小程序video视频监听播放时间
  3. eclipse:设置maven本地仓库
  4. 明解c语言实践篇翻译_《明解C语言》PDF版本下载
  5. 超实用windows软件推荐!新电脑必装哪些软件?
  6. 数据库性能优化面试题,全网最新
  7. 量化投资中的「模型」与「人」
  8. RS485转USB插电脑上通讯不上
  9. obs摄像头模糊_OBS录制视频画面很糊,不清晰,怎么调整设置?
  10. FreeImage使用方法