1、什么是Activiti
(1)工作流(Workflow),就是“业务过程的部分或整体在计算机应用环境下的自动化”,它主要解决的是“使在多个参与者之间按照某种预定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目标,或者促使此目标的实现。
(2)工作流管理系统(Workflow Management System, WfMS)是一个软件系统,它完成工作量的定义和管理,并按照在系统中预先定义好的工作流逻辑进行工作流实例的执行。工作流管理系统不是企业的业务系统,而是为企业的业务系统的运行提供了一个软件的支撑环境。
(3)常见的工作流框架有Activity、JBPM、OSWorkFlow、WorkFlow。现在使用activiti5.16版学习。
(4)工作流框架底层需要有数据库提供支持,activiti5.18版本,有24张表。JBPM4.4框架有18张表。JBPM底层使用hibernate操作数据库。Activiti框架底层使用的mybatis操作数据库。
2、使用Activiti基本过程
定义流程(流程模型设计) -> 部署流程定义(部署到实施的项目中) -> 启动流程实例->获取组任务1->办理个人任务1->获取组任务2->办理个人任务2.。。。。。->结束
组任务与个人任务区别:
组任务是多个用户都可以完成的任务。没有组任务直接办理个人任务;
有组任务需先通过拾取将组任务变成个人任务, 然后再办理。
以请假为例说明ctiviti工作流程:
第一步将该请假业务流程部署到activiti系统,当系统将该业务流程部署启动时,则业务流程开始,即张三提出一次请假申请业务流程开始了,activiti在部署该业务流程时候,会自动记录该流程中所有任务及当前处理到那个任务状态。(相比于传统的处理方式,activiti将状态自动保存到数据库里面了,不需要用户去设计数据库表字段status来标识业务流程当前状态)。传统方式如果需要去取当前业务状态,则自己封装api从业务service层到数据库Dao向数据库取得status字段值,即当前业务流程状态。那么activiti里面该如何获取当前业务流程状态呢?activiti中封装了一系列API(核心的都有几十上百个,几乎常用的业务场景全部已经封装好了),可以去获取当前业务流程的状态。在传统的方法中,如果一个状态改变,需要流转到下一个状态,需要编码人员,写代码判断状态去流转。而在activiti中,它灵活的事件机制能够自动高效的推动业务流转。
3、Activiti各种服务:
RepositoryService:流程仓库Service,用于管理流程仓库,如部署、删除、读取流程资源。
IdentifyService:身份Service,管理和查询用户、组之间的关系。
RuntimeService:运行时Service,管理所有正在运行状态的流程实例、任务等。
TaskService:任务Service,用于管理、查询任务,如签收、办理、指派等。
FormService:表单Service,用于读取和流程、任务相关的表单数据。
HistoryService:历史Service,可以查询所有历史数据。
ManagementService:引擎管理Service,和具体业务无关,主要是可以查询引擎配置、数据库、作业等。
相关推荐
Activiti官方唯一推荐中文书籍——《Activiti实战》示例源码
Activiti学习第一天,你可以先下载看看;Activiti学习第一天,你可以先下载看看,
最详解!Activiti学习文档
Activiti学习文档资料,5分你买不了上当,5分你买不了吃亏,保证你满意……
里面是activiti的学习资料。包括怎么创建流程,发布流程。Spring的整合等
工作流activiti学习代码
Activiti学习文档(一)之整合SSH框架开发Activiti包
activiti学习资料,整合SSH, Activiti5.4整合SSH项目开发
里面包括工作流的基本配置,myeclipse9安装activiti-designer插件demo,和基本操作
Activiti 学习笔记五:流程变量
activiti学习-使用activiti多实例任务实现会签
Activiti学习笔记,介绍Activiti的组成结构,工作流BPMN2.0规范等
Activiti学习笔记三:管理流程定义
activiti第一天2_2 表示activiti第二天第二个阶段的学习 总共五天 保证完全学会activiti
Activiti 学习笔记九:并行网关(parallelGateWay)
activiti-examples的例子 包括三个部分 详细的自己看
《疯狂Workflow讲义——基于Activiti的工作流应用开发》的最后通过讲解一个办公自动化系统的开发过程,让读者更了解Activiti在实际生产中的使用,让本书的内容不仅仅停留在理论的层次,更为读者开辟了实践的道路。
Activiti 学习笔记八:排他网关(ExclusiveGateWay)
第一个文件为1-3,第二个文件为4-6。 资料列表如下: 1、传智播客视频地址。 2、传智博客-原型、代码及文档。 3、activiti-5.22.0源码。 4、Eclipse离线activiti设计器。 5、Activiti5.4 用户指南(中文版)。 6、...