《Activiti工作流入门详解完整教学教程.doc》由会员分享,可在线阅读,更多相关《Activiti工作流入门详解完整教学教程.doc(38页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、.Activiti 入门教程详解完整教程1.Activiti 介绍Activiti 是由 Alfresco 软件在 2010 年 5 月 17 日发布的业务流程管理(BPM)框架,它是覆盖了业务流程管理,工作流,服务协作等领域的一个开源,灵活的,易扩展的可执行流程语言框架。Activiti 基于 Apache 许可的开源 BPM 平台,创始人 Tom Baeyens 是 JBoss JBPM 的项目架构师,它的特色是提供了 eclipse 插件,开发人员可以通过插件直接绘画出业务流程图。1.1 工作流引擎ProcessEngine 对象,这是 Activiti 工作的核心。负责生成流程运行时的
2、各种实例及数据,监控和管理流程的运行。1.2 BPMN业务流程建模与标注(Business Process Model and Notation,BPMN) ,描述流程的基本符号,包括这些图元如何组合成一个业务流程图(Business Process Diagram).2.准备环境2.1 Activiti 软件环境1) JDK1.6 或者更高版本2) 支持的数据库有:h2,mysql,oracle,mysql,db2 等3) 支持 Activiti 运行的 jar 包,可以通过 maven 依赖引入4) 开发环境为 Eclipse3.7 或者以上版本,myeclipse 为 8.6 版本2.2
3、 安装流程设计器(eclipse 插件)1)打开 Help Install New Software Add输入 Name: Activiti DesignerLocation: http:/Activiti.org/designer/update/输入完成后,单击 OK 按钮等待下载完成后安装。安装完成后在菜单选项中会出现 Activiti 的目录选项.2.3 设置 eclipse activit 插件的画流程图 选项打开菜单 Windows Preferences Activiti Save 下流程图片的生成方式勾选上 Create process definition image whe
4、n saving the diagram 操作,勾选上这个操作后在画流程图后保存 eclipse 会自动生成对应的流程图片。2.4 准备开发环境2.4.1 创建 maven web 项目,在 maven 中添加 Activiti 依赖在 eclipse 左边工作栏右键 New 选择创建 Maven Project 项目,创建一个名为 ActivitiTest 的项目.点击 Finish 完成。右键项目选择 Properties,选择 Project Facets 勾选上图中的选项,点击 Apply,再点击 OK然后将项目转换成 web 项目 ,右键项目选择 Properties,在 Proje
5、ct Facets 中做如下勾选,然后点击 Appy 应用和 OK 确定.然后右键项目 Properties ,选择 Deployment Assembly,将 test 相关目录 Remove 掉之保留main 下面需要发布的内容,如下图.然后点击 Appply 和 OK然后在 pom.xml 文件中添加以下依赖org.ActivitiActiviti-engine5.21.0org.ActivitiActiviti-spring5.21.0org.codehaus.groovygroovy-all2.4.3org.slf4jslf4j-api1.7.6org.slf4jslf4j-jdk1
6、41.7.6.junitjunit3.8.1testmysqlmysql-connector-java5.1.38然后在命令行下 mvn compile 编译当前项目,将需要的包下载到本地仓库2.4.2 初始化数据库1) src/main/resource 目录下创建 Activiti.cfg.xml 文件, 内容如下jdbcUrl 为你电脑数据库的 urljdbcUsername 为数据库用户名jdbcPassword 为数据库密码2)在 main/java 目录下创建任意目录和类编写创建 Activiti 数据表方法public class CreateTable /* 创建流程表* */
7、Testpublic void createTable() ProcessEngine processEngine = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource(“Activiti.cfg.xml“).buildProcessEngine();System.out.println(“-processEngine:“ + processEngine); 然后运行该测试方法,如果运行成功,在数据库中应该会产生 25 张 Activiti的相关数据表.2.4.3 Activiti 表说明下面是概括了
8、几个常用的数据表流程部署相关表act_re_deployement 部署对象表act_rep_procdef 流程定义表act_ge_bytearray 资源文件表act_ge_prperty 主键生成策略表(对于部署对象表的主键 ID)流程实例相关表act_ru_execution 正在执行的执行对象表(包含执行对象 ID 和流程实例 ID,如果有多个线程可能流程实例 ID 不一样)act_hi_procinst 流程实例历史表act_hi_actinst 存放历史所有完成的任务Task 任务相关表act_ru_task 代办任务表 (只对应节点是 UserTask 的)act_hi_taskinst 代办任务历史表 (只对应节点是 UserTask 的)