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的数据库设计遵循一定的命名规则,便于理解和维护。其数据库由24张表组成,每张表都按照`act_组别_...
Activiti是一个强大的业务流程管理(BPM)系统,广泛应用于企业级应用开发中,以实现流程自动化和优化。 在 Activiti 的示例源码中,我们可以探索以下几个重要的知识点: 1. **Activiti流程定义与模型**:源码中...
这个"Activiti学习文档资料"包含了一份工作流使用教程和一些文档,可以帮助我们深入了解和掌握Activiti的核心功能和使用方法。 Activiti 是由Alfresco公司开发的,基于Java平台,符合Business Process Model and ...
本资源包含的"activiti学习思维导图"是一份关于Activiti学习的综合指南,旨在帮助用户从基础到进阶地掌握Activiti的核心概念和技术。 1. **流程定义**: - BPMN 2.0:Activiti 使用Business Process Model and ...
工作流Activiti是一种开源的工作流引擎,用于在企业应用程序中实现业务流程自动化。它由Alfresco Software开发,旨在提供灵活、可扩展且易于使用的流程管理解决方案。在本"工作流Activiti学习代码"资源中,我们将...
里面包括工作流的基本配置,myeclipse9安装activiti-designer插件demo,和基本操作
通过这些例子,开发者可以学习如何使用 Activiti API 或者 SpringBoot 集成的 Activiti starter 来定义和运行流程实例。 2. **动态流程示例**:在实际业务中,流程可能需要根据不同的情况动态变化。这部分示例展示...
activiti学习资料,整合SSH, Activiti5.4整合SSH项目开发
#### 一、工作流概念解析 工作流(Workflow)是指“业务过程的部分或整体在计算机应用环境下的自动化”。它旨在通过自动化文档、信息或任务在多个参与者之间的传递流程,实现特定的业务目标。简而言之,工作流是一种...
在“activiti第一天2_2”的学习中,我们将深入探讨Activiti的核心概念和关键特性,为后续四天的学习打下坚实的基础。 首先,了解Activiti的基本架构是至关重要的。Activiti采用了模型驱动的设计,允许用户通过图形...
这个“activiti学习资料文档”压缩包很可能是为那些希望深入理解Activiti工作流引擎和BPM概念的学习者准备的。下面,我们将详细探讨Activiti的相关知识点,以及如何通过这些资料进行学习。 一、Activiti简介 ...
本篇文章将深入探讨Activiti中的一个重要概念——排他网关(Exclusive Gateway),也称为独占网关。排他网关是流程设计中的一个关键组件,它在流程执行时起到决策的作用,根据预定义的条件来决定流程应该如何继续。 ...
在本篇博客“工作流Activiti的学习总结(十二)activiti官方十分钟快速学习”中,作者分享了关于Activiti工作流引擎的快速学习经验。Activiti是一个开源的、基于Java的企业级工作流引擎,它被广泛应用于自动化业务...
这个“activiti 第一天 共4天 视频教程”显然是一个全面介绍Activiti的基础到进阶的学习资源,旨在帮助初学者快速理解和掌握这一强大的工具。 在第一天的课程中,通常会涵盖以下几个关键知识点: 1. **Activiti...
首先,流程定义是Activiti中的核心概念,它是流程模型的静态表示,描述了工作流的结构和规则。流程定义通常以BPMN 2.0(Business Process Model and Notation)标准的XML文件形式存在,扩展名为`.bpmn20.xml`。BPMN...
《Activiti-5.21.0:第一卷——引领企业流程管理新篇章》 Activiti,作为一款开源的工作流引擎,被广泛应用于企业的业务流程自动化和管理中。它以其强大的功能、灵活的设计以及友好的社区支持,赢得了全球开发者的...
Activiti学习笔记,介绍Activiti的组成结构,工作流BPMN2.0规范等