2022年Activiti入门教程 .pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《2022年Activiti入门教程 .pdf》由会员分享,可在线阅读,更多相关《2022年Activiti入门教程 .pdf(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Activiti 入门使用名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 16 页 - - - - - - - - - 1. 初识 Activiti 1.1. 工作流与工作流引擎工作流 (workflow )就是工作流程的计算模型,即将工作流程中的工作如何前后组织在一起的逻辑和规则在计算机中以恰当的模型进行表示并对其实施计算。它主要解决的是“ 使在多个参与者之间按照某种预定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目标,或者促使此目标的实现” 。
2、(我的理解就是:将部分或者全部的工作流程、逻辑让计算机帮你来处理,实现自动化)所谓工作流引擎是指workflow作为应用系统的一部分,并为之提供对各应用系统有决定作用的根据角色、分工和条件的不同决定信息传递路由、内容等级等核心解决方案。例如开发一个系统最关键的部分不是系统的界面,也不是和数据库之间的信息交换,而是如何根据业务逻辑开发出符合实际需要的程序逻辑并确保其稳定性、易维护性和弹性。比如你的系统中有一个任务流程,一般情况下这个任务的代码逻辑、流程你都要自己来编写。 实现它是没有问题的。 但是谁能保证逻辑编写的毫无纰漏?经过无数次的测试与改进,这个流程没有任何漏洞也是可以实现的,但是明显就会
3、拖慢整个项目的进度。工作流引擎解决的就是这个问题:如果应用程序缺乏强大的逻辑层,势必变得容易出错(信息的路由错误、死循环等等)。1.2. BPMN2.0 规范BPMN (Business Process Model and Notation)-业务流程模型与符号。BPMN是一套流程建模的标准,主要目标是被所有业务用户容易理解的符号,支持从创建流程轮廓的业务分析到这些流程的最终实现,知道最终用户的管理监控。通俗一点其实就是一套规范,画流程模型的规范。流程模型包括:流程图、协作图、编排图、会话图。详细信息请google。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - -
4、- - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 16 页 - - - - - - - - - 1.3. Activiti概述1.3.1. Activiti 由来学习过 Activiti的朋友都知道,Activiti的创始人也就是JBPM(也是一个优秀的BPM引擎)的创始人,从Jboss离职后开发了一个新的BPM 引擎: Activiti 。所以, Activiti 有很多地方都有JBPM 的影子。所以,据说学习过JBPM 的朋友学起Activiti来非常顺手。由于本人之前没有工作流及JBPM 的相关基础,刚开始学习Activiti 的时候可以说是无
5、比痛苦的,根本不知道从何下手,这里也建议大家先进行工作流及BPMN2.0 规范的学习,有了一定的基础后,再着手学习Activiti 。1.3.2. Activiti 简介Activiti是一个开源的工作流引擎,它实现了BPMN 2.0 规范,可以发布设计好的流程定义,并通过api 进行流程调度。Activiti 作为一个遵从Apache 许可的工作流和业务流程管理开源平台,其核心是基于Java 的超快速、超稳定的BPMN 2.0 流程引擎,强调流程服务的可嵌入性和可扩展性,同时更加 强调面向业务人员。Activiti 流程引擎重点关注在系统开发的易用性和轻量性上。每一项BPM 业务功能Acti
6、viti 流程引擎都以服务的形式提供给开发人员。通过使用这些服务,开发人员能够构建出功能丰富、轻便且高效的BPM 应用程序。1.4. 文档说明以上部分对工作流、BPMN 、Activiti的概念做了一个简单的介绍,目的是了解Activiti究竟是什么,能做些什么及在学习Activiti 之前需要了解的知识与技术。其中大部分文字来自 Copy 网上的各种资料与文档,通过总结而来的。具体的更详细的内容需自己google,参考一些官方的文档与手册。本文档之后内容如下:1)下载与使用2)核心组件与说明名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - -
7、- - - 名师精心整理 - - - - - - - 第 3 页,共 16 页 - - - - - - - - - 3)入门示例4)Eclipse 中的 Activiti插件的使用本文档旨在为初学Activiti的朋友提供 入门级别 的参考,不会对其原理及其结构进行深层次的探究(更多是因为目前自身理解还不是很透彻),只是为大家理清思路,方便以后更深层次的学习。 本文档还有一个重要的特点,那就是根据自己看官方手册的经验,教大家如何看手册从而更有效率!由于是初学, 很多术语或解释难免理解有偏差,所以一定要看官方提供的文档与手册,那才是学习的最佳途径!2. 开始学习2.1. 必要的准备2.1.1.
8、下载与了解目录下载Activiti :下载路径,也就是官方网站的地址:http:/activiti.org/download.html。下载后解压(我所使用的是5.12 版本的, Activiti 更新速度飞快,几乎每两个月就会有一个更新的小版本) ,看到如下目录:1)database :里面存放的是Activiti 使用到的数据库信息的sql 文件,它支持的数据库类型如下图,使用时只需执行你自己的数据库类型的文件即可。如:你的数据库是mysql,那么就执行activiti.mysql.create.*.sql即可。2)docs:毫无疑问,api 文档是也。3)libs:使用 Activiti
9、所需要的所有的jar 包和源文件。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 16 页 - - - - - - - - - 4)wars:官方给我们提供的示例Demo,通过使用Demo 可以更加快速的了解Activiti 。2.1.2. 其他准备使用 Activiti ,首先当然要有jdk 了! 6+版本就可以了。其次,要有一款IDE,我们当然会使用Eclipse,这里使用Juno 版本。然后, web 容器当然也要有,这里使用Tomcat6.0版本。然后就是Acti
10、viti 的 Eclipse 插件了,这个后面再介绍。2.1.3. 一分钟入门(见用户手册)所谓的一分钟入门就是通过运行你下载的包里的wars 文件夹里的activiti-explorer.war文件,以便更快的了解Activiti 。将文件拷贝至Tomcat 的 webapps目录,启动tomcat,输入http:/localhost:8080/activiti-explorer。然后你就可以开整了!总算是有一点微小的进展了。这里需要说明的就是,这个Demo 默认采用的是h2 内存数据库,如果想用你自己的数据库,就需要修改web 应用 WEB-INF/classes 目录下的db.prope
11、rties。然后,按上面说的,把database 里的create 文件夹里的数据库文件导入你自己的数据库(如果没有修改db.properties,就不用导入了) 。Demo 的具体解释与数据库配置的具体信息详见官方手册,手册已经说的很清楚了。这里需要重点了解activiti.cfg.xml的配置以及如何构建ProcessEngine (配置文件构建方式、代码构建方式) 。对 Demo 的使用介绍在官方文档的后面才开始介绍,这里建议应用跑起来之后,先自己试试手(可看后面介绍Demo 如何使用的章节) ,看看如何跑一个流程、整个流程是怎么流的、并随时关注数据库表里的数据的变化等,对以后的学习很有
12、帮助!2.2. 核心组件介绍2.2.1. 关键对象1.Deployment:流程部署对象,部署一个流程时创建。2.ProcessDefinitions:流程定义,部署成功后自动创建。3.ProcessInstances :流程实例,启动流程时创建。4.Task:任务,在Activiti中的 Task 仅指有角色参与的任务,即定义中的UserTask。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 16 页 - - - - - - - - - 5.Execution:执行计
13、划,流程实例和流程执行中的所有节点都是Execution,如 UserTask、ServiceTask 等。2.2.2. 服务接口1.ProcessEngine:流程引擎的抽象,通过它我们可以获得我们需要的一切服务。2.RepositoryService:Activiti中每一个不同版本的业务流程的定义都需要使用一些定义文件,部署文件和支持数据(例如 BPMN2.0 XML 文件,表单定义文件,流程定义图像文件等 ),这些文件都存储在Activiti内建的Repository 中。 RepositoryService 提供了对repository 的存取服务。3.RuntimeService:
14、在 Activiti中,每当一个流程定义被启动一次之后,都会生成一个相应的流程对象实例。RuntimeService 提供了启动流程、查询流程实例、设置获取流程实例变量等功能。此外它还提供了对流程部署,流程定义和流程实例的存取服务。4.TaskService: 在 Activiti中业务流程定义中的每一个执行节点被称为一个Task,对流程中的数据存取,状态变更等操作均需要在Task 中完成。 TaskService 提供了对用户Task 和 Form 相关的操作。它提供了运行时任务查询、领取、完成、删除以及变量设置等功能。5.IdentityService: Activiti中内置了用户以及组
15、管理的功能,必须使用这些用户和组的信息才能获取到相应的Task。IdentityService 提供了对Activiti 系统中的用户和组的管理功能。6.ManagementService: ManagementService 提供了对Activiti流程引擎的管理和维护功能,这些功能不在工作流驱动的应用程序中使用,主要用于Activiti系统的日常维护。7.HistoryService: HistoryService用于获取正在运行或已经完成的流程实例的信息,与RuntimeService 中获取的流程信息不同,历史信息包含已经持久化存储的永久信息,并已经被针对查询优化。现在至少要知道有这些
16、对象和接口。并结合Activiti Api这一章节来看,你就会对部署流程、启动流程、 执行任务等操作有一个基本的概念。之后编写一个简单的单元测试,主要为了测试 activiti.cfg.xml配置的是否正确,流程是否可以被部署即可。至 于 与Spring的 集 成 , 一 定 要 熟 悉 基 于 Spring配 置Activiti , 以 及事 务 的 处 理 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 16 页 - - - - - - - - - 3. 入门示例(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年Activiti入门教程 2022 Activiti 入门教程
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内