之前没有用到过工作流,这次由于需要,用到了Activiti工作流引擎,首先要做的就是先来了解一下什么是工作流引擎,它能够完成什么的任务,我们在什么情况下选用工作流引擎来处理问题。

1、Activiti由来?

Activiti的创始人也就是JBPM的创始人,从JBoss离职后开发了一个新的BPM引擎-----Activiti。由于是JBPM的创始人发明的Activiti,故其中有很多JBPM的身影,Activiti的遵守的设计原则是一致的:强调流程服务的可嵌入性和可扩展性。

2、什么是Activiti?

Activiti的核心是BPMN2.0的流程引擎,它实现了BPMN2.0的规范,可以发布设计好的流程定义,并通过API进行流程调度。它是基于Java的超快速、超稳定的流程引擎,强调服务的可嵌入性和可扩展性,同时更加强调面向业务。

BPMN是全球BPM厂商广泛接受的BPM标准,全称为Business Process Model and Natation。

3、核心组件

3.1 ProcessEngine:流程引擎抽象,通过它可以获取我们需要的一切服务

3.2 RepositoryService:Activiti中每一个不同版本的业务流程的定义都需要使用一些定义文件,部署

文件和支持数据,这些文件都存储在Activiti内建的Repository中。RepositoryService提供对

repository的存取服务。

3.3 RuntimeService:在Activiti中,每当一个流程定义被启动一次之后,都会生成一个相应的流程对象

实例。RuntimeService提供了启动流程、查询流程实例、设置获取流程实例变量等功能。此外它还提供

了对流程部署,流程定义和流程实例的存取服务

3.4 TaskService:在Activiti中业务流程定义中的每一个执行节点被称为一个Task,对流程中的数据存取,

状态变更等操作均需要在Task中完成。TaskService提供了对用户Task 和Form相关的操作。它提供了

运行时任务查询、领取、完成、删除以及变量设置等功能

3.5 IdentityService: Activiti内置的了用户以及组管理的功能,必须使用这些用户和组的信息才能或得到

相应的Task。

3.6 ManagementService: 提供了对Activiti流程引擎管理和维护的工鞥,主要用于Activiti系统的日常维护

3.7 HistoryService:用于获取正在娙或已经完成的流程的信息,与RuntimeService中获取的流程信息不同,

历史信息包含已经持久化存储的永久信息。

3.8 FormService:Activiti中的流程和状态Task均可以关联业务相关的数据。通过使用Form Service可以存取

启动和完成任务所需的表单数据并且根须需要来渲染表单。

4、怎么用?

使用场景:多人协作完成的业务流程场景。

比如:请假

开始--请假-->审批(项目经理)--->审批(总经理)--->结束

5、总结

对于Activiti还是刚开始研究,还需要接下来继续做例子来实现,究竟跟其他的流程引擎有什么差别,或者说这是怎样的一个演变过程,只有比较过之后才能做出自己选择。

认识Activiti的更多相关文章

  1. 流程开发Activiti 与SpringMVC整合实例

    流程(Activiti) 流程是完成一系列有序动作的概述.每一个节点动作的结果将对后面的具体操作步骤产生影响.信息化系统中流程的功能完全等同于纸上办公的层级审批,尤其在oa系统中各类电子流提现较为明显 ...

  2. activiti工作流的web流程设计器整合视频教程 SSM和独立部署

    本视频为activiti工作流的web流程设计器整合视频教程 整合Acitiviti在线流程设计器(Activiti-Modeler 5.21.0 官方流程设计器) 本视频共讲了两种整合方式 1. 流 ...

  3. activiti工作流的web流程设计器整合视频教程 SSM 和 独立部署

    本视频为activiti工作流的web流程设计器整合视频教程 整合Acitiviti在线流程设计器(Activiti-Modeler 5.21.0 官方流程设计器) 本视频共讲了两种整合方式 1. 流 ...

  4. 文档分享-Activiti 5.16 用户手册

    今天在翻看工作流相关的网页的时候,在开源中国上http://www.oschina.net/question/915507_149175发现activiti的中文文档:http://www.mossl ...

  5. 1. Activiti 运行时表信息总结

    Activiti的后台是有数据库的支持,所有的表都以ACT_开头. 第二部分是表示表的用途的两个字母标识. 用途也和服务的API对应. ACT_RE_*: 'RE'表示repository. 这个前缀 ...

  6. Activiti学习(二)数据表结构

    Activiti工作流引擎数据库表结构 数据库表的命名 Acitiviti数据库中表的命名都是以ACT_开头的.第二部分是一个两个字符用例表的标识.此用例大体与服务API是匹配的. l        ...

  7. Activiti学习(一) 环境搭建

    原料:Activiti5.4  MyEclipse 10 1.先将activiti文件夹放置myeclipse的安装目录dropins文件夹下2.将activiti文件夹里activiti.link中 ...

  8. Activiti工作流学习(三)Activiti工作流与spring集成

    一.前言 前面Activiti工作流的学习,说明了Activiti的基本应用,在我们开发中可以根据实际的业务参考Activiti的API去更好的理解以及巩固.我们实际的开发中我们基本上都使用sprin ...

  9. activiti当前任务高亮(解决乱码问题)

    package com.xinwei; import java.io.File; import java.io.InputStream; import java.util.ArrayList; imp ...

  10. activiti 中文文档

    http://www.mossle.com http://www.mossle.com/docs/activiti/index.html

随机推荐

  1. centos 6.9 安装docker

    1.查看系统具体版本 yum install lsb -y lsb_release -a 2.安装yum源 yum -y install http://dl.fedoraproject.org/pub ...

  2. Error Code: 1175. You are using safe update

    使用MySQL执行update的时候报错:Error Code: 1175. You are using safe update mode and you tried to update a tabl ...

  3. cad.net 获取所有已经安装的cad版本信息

    计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\Hardcopy var ackey = Registry.LocalMachine.OpenSubKey(@&quo ...

  4. PG数据库CPU和内存满负荷运转优化案

    1.问题描述 某客户系统采用三层架构:数据库—应用服务—前端应用.其中数据库使用PostgreSQL 10.0作为数据库软件.自周四起,服务器的CPU与内存使用率持续处于过饱合状态,并因此导致了数次宕 ...

  5. 25个led灯新玩法

    Microbit板子的25个led灯,是5X5的阵列,led(lights emitting diodes)中文叫发光二极管,有单向导电性,还发光,有各种颜色的,红,蓝,黄等等.mPython可以让你 ...

  6. MySQL数据类型之BLOB与TEXT及其最大存储限制

    https://blog.csdn.net/q3dxdx/article/details/51014357 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.n ...

  7. 发送邮件使用html模板的实现的大致思路

    客户最近有一个需求,大致的意思是提供一个 word文档,让其作为一个模板,在发送邮件的时候能够实现按照这个模板的样式和内容,替换其中 的一些字段,作为邮件的内容发给收件人.这个需求最大的问题就是在于这 ...

  8. RabbitMQ学习之Routing(4)

    上一节,是广播日志message到很多的receivers. 这节,我们讲订阅其中的一个子集.例如,我们想可以把危机的error message导到log file.而仍然可以打印所有的log mes ...

  9. 【转】socket通信-C#实现tcp收发图片音视频等字节流数据

    在日常碰到的项目中,经常碰到需要收发二进制数据的场景.比如要发送一张图片,要发送一首音频,要发送一个压缩包,要发送一个视频等等.这些数据并非字符串,而是二进制字节流数据.那么如何如何使用SharpSo ...

  10. 将fileupload标签的值清空

    在开发中遇到了这样一个问题,在一个form表单中,有一个fileupload标签,新增,修改都是同一个form,当我第一次选择了上传文件路径,并且提交之后,第二次再使用这个form,这次没有选择上传文 ...