内容简介
工作流框架Activiti是由jBPM4发展而来的,为了能帮助广大的Java研发者学习该框架,并将其应用到实际的生产中,笔者根据多年来的企业应用研发经验,编写了《疯狂Workflow讲义——基于Activiti的工作流应用开发》。
《疯狂Workflow讲义——基于Activiti的工作流应用开发》先对Activiti的基础知识进行讲解,并从源代码的实现上讲解Activiti各个模块的API。此外详细讲述了BPMN 2.0规范的内容,包括目前Activiti对该规范的实现情况。《疯狂Workflow讲义——基于Activiti的工作流应用开发》还讲解了如何在实际企业应用中使用Activiti,并与其他流行的开源框架进行整合,包括企业应用开发所的Web Service、企业服务总线、规则引擎、IoC框架和ORM框架等。《疯狂Workflow讲义——基于Activiti的工作流应用开发》的通过讲解一个办公自动化系统的开发过程,让读者更了解Activiti在实际生产中的使用,让本书的内容不仅仅停留在理论的层次,更为读者开辟了实践的道路。
目录
第1章 Activiti介绍 1
1.1 工作流介绍 2
1.2 BPMN 2.0规范简述 2
1.2.1 BPMN 2.0概述 3
1.2.2 BPMN 2.0元素 3
1.2.3 BPMN 2.0的XML结构 4
1.3 Activiti介绍 4
1.3.1 Activiti的出现 5
1.3.2 Activiti的发展 5
1.3.3 选择Activiti还是jBPM 5
1.4 本章小结 5
第2章 安装与运行Activiti 6
2.1 下载与运行Activiti 7
2.1.1 下载和安装Ant 7
2.1.2 下载和安装Maven 8
2.1.3 下载和安装Activiti 9
2.1.4 运行第一个Activiti应用 9
2.2 安装开发环境 11
2.2.1 下载Eclipse 11
2.2.2 安装Activiti插件 11
2.2.3 获取Activiti源代码 13
2.3 编写第一个Activiti程序 15
2.3.1 如何运行本书案例 15
2.3.2 建立工程环境 15
2.3.3 创建配置文件 16
2.3.4 创建流程文件 16
2.3.5 加载流程文件与启动流程 17
2.4 本章小结 18
第3章 Activiti数据库设计 19
3.1 通用数据表 20
3.1.1 资源表 20
3.1.2 属性表 20
3.2 流程存储表 21
3.2.1 部署数据表 21
3.2.2 流程定义表 21
3.3 身份数据表 21
3.3.1 用户表 21
3.3.2 用户账号(信息)表 22
3.3.3 用户组表 22
3.3.4 关系表 22
3.4 运行时数据表 23
3.4.1 流程实例(执行流)表 23
3.4.2 流程任务表 23
3.4.3 流程参数表 24
3.4.4 流程与身份关系表 24
3.4.5 工作数据表 24
3.4.6 事件描述表 25
3.5 历史数据表 25
3.5.1 流程实例表 25
3.5.2 流程明细表 26
3.5.3 历史任务表和历史行为表 26
3.5.4 附件表和评论表 26
3.6 本章小结 27
第4章 Activiti流程引擎配置 28
4.1 ProcessEngineConfiguration 29
4.1.1 createProcessEngineConfigurationFrom ResourceDefault方法 29
4.1.2 createProcessEngineConfiguration FromResource方法 30
4.1.3 createProcessEngineConfiguration FromInputStream方法 30
4.1.4 createStandaloneInMemProcess EngineConfiguration方法 30
4.1.5 createStandaloneProcessEngine Configuration方法 31
4.2 数据源配置 31
4.2.1 Activiti支持的数据库 32
4.2.2 Activiti与Spring 32
4.2.3 JDBC配置 32
4.2.4 DBCP数据源配置 33
4.2.5 C3P0数据源配置 34
4.2.6 Activiti其他数据源配置 35
4.2.7 databaseSchemaUpdate配置 35
4.2.8 databaseType配置 36
4.3 其他属性配置 37
4.3.1 history配置 37
4.3.2 jobExecutorActivate配置 38
4.3.3 邮件服务器配置 38
4.4 ProcessEngineConfiguration bean 38
4.4.1 ProcessEngineConfiguration及其子类 38
4.4.2 自定义ProcessEngineConfiguration 39
4.5 Activiti的命令拦截器 41
4.5.1 命令模式 41
4.5.2 责任链模式 43
4.5.3 编写自定义拦截器 45
4.6 本章小结 47
第5章 流程引擎的创建 48
5.1 ProcessEngineConfiguration的buildProcessEngine方法 49
5.2 ProcessEngines 49
5.2.1 init与getDefaultProcessEngine方法 49
5.2.2 registerProcessEngine和unregister方法 50
5.2.3 retry方法 50
5.2.4 destroy方法 51
5.3 ProcessEngine对象 51
5.3.1 服务组件 52
5.3.2 close方法 52
5.3.3 流程引擎名称 53
5.4 本章小结 54
第6章 用户组与用户 55
6.1 用户组管