Java开发图书 其他 查看内容

疯狂Workflow讲义——基于Activiti的工作流应用开发 浏览()| 评论() | 收藏()

作者: 杨恩雄
出版社: 电子工业出版社
副标题: 基于Activiti的工作流应用开发
出版年: 2014-5
页数: 542
定价: 73元
《疯狂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还是jBPM5

1.4 本章小结5

第2章 安装与运行Activiti6

2.1 下载与运行Activiti7

2.1.1 下载和安装Ant7

2.1.2 下载和安装Maven8

2.1.3 下载和安装Activiti9

2.1.4 运行第一个Activiti应用9

2.2 安装开发环境11

2.2.1 下载Eclipse11

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 ProcessEngineConfiguration29

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与Spring32

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 bean38

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 ProcessEngines49

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 用户组管理56

6.1.1 Group对象56

6.1.2 创建用户组56

6.1.3 修改用户组57

6.1.4 删除用户组58

6.2 Activiti数据查询58

6.2.1 查询对象59

6.2.2 list方法59

6.2.3 listPage方法60

6.2.4 count方法60

6.2.5 排序方法61

6.2.6 ID排序问题62

6.2.7 多字段排序63

6.2.8 singleResult方法65

6.2.9 用户组数据查询65

6.3 用户管理67

6.3.1 User对象67

6.3.2 添加用户67

6.3.3 修改用户68

6.3.4 删除用户68

6.3.5 验证用户密码69

6.3.6 用户数据查询70

6.3.7 设置用户权限71

6.4 用户信息管理72

6.4.1 添加和删除用户信息72

6.4.2 查询用户信息73

6.4.3 添加与删除用户账号74

6.4.4 查询用户信息75

6.4.5 设置用户图片76

6.5 用户组与用户关系77

6.5.1 绑定关系77

6.5.2 解除绑定78

6.5.3 查询用户组下的用户78

6.5.4 查询用户所属的用户组79

6.6 本章小结80

第7章 流程存储81

7.1 流程文件部署82

7.1.1 Deployment对象82

7.1.2 DeploymentBuilder对象82

7.1.3 添加输入流资源83

7.1.4 添加classpath资源84

7.1.5 添加字符串资源85

7.1.6 添加压缩包资源85

7.1.7 修改部署名称86

7.1.8 过滤重复部署86

7.1.9 资源部署87

7.2 流程定义的管理87

7.2.1 ProcessDefinition对象87

7.2.2 流程部署88

7.2.3 流程图部署89

7.2.4 中止与激活流程定义90

7.3 流程定义权限91

7.3.1 设置流程定义的用户权限91

7.3.2 设置流程定义的用户组权限93

7.3.3 IdentityLink对象93

7.3.4 查询权限数据93

7.4 RepositoryService数据查询与删除95

7.4.1 查询部署资源96

7.4.2 查询流程文件96

7.4.3 查询流程图97

7.4.4 查询部署资源名称98

7.4.5 删除部署资源98

7.4.6 DeploymentQuery对象99

7.4.7 ProcessDefinitionQuery对象100

7.5 本章小结100

第8章 流程任务管理101

8.1 任务的创建与删除102

8.1.1 Task对象102

8.1.2 创建与保存Task实例103

8.1.3 删除任务103

8.2 任务权限104

8.2.1 设置候选用户组105

8.2.2 设置候选用户106

8.2.3 权限数据查询106

8.2.4 设置任务持有人108

8.2.5 设置任务受理人109

8.2.6 添加任务权限数据110

8.2.7 删除用户组权限112

8.2.8 删除用户权限113

8.3 任务参数115

8.3.1 基本类型参数设置115

8.3.2 序列化参数116

8.3.3 获取参数117

8.3.4 参数作用域118

8.3.5 设置多个参数119

8.4 任务附件管理120

8.4.1 AttachmentEntity对象120

8.4.2 创建任务附件120

8.4.3 附件查询122

8.4.4 删除附件123

8.5 任务评论与事件记录123

8.5.1 CommentEntity对象123

8.5.2 新增任务评论124

8.5.3 事件的记录124

8.5.4 数据查询126

8.6 任务声明与完成126

8.6.1 任务声明126

8.6.2 任务完成127

8.7 本章小结128

第9章 流程控制129

9.1 流程实例与执行流130

9.1.1 流程实例与执行流概念130

9.1.2 流程实例和执行流对象(ProcessInstance与Execution) 130

9.2 启动流程131

9.2.1 startProcessInstanceById方法131

9.2.2 startProcessInstanceByKey方法133

9.2.3 startProcessInstanceByMessage134

9.3 流程参数135

9.3.1 设置与查询流程参数136

9.3.2 流程参数的作用域136

9.3.3 其他设置参数方法138

9.4 流程操作138

9.4.1 发送信号138

9.4.2 触发信号事件140

9.4.3 触发消息事件143

9.4.4 中断与激活流程145

9.4.5 删除流程145

9.5 流程数据查询146

9.5.1 执行流查询146

9.5.2 流程实例查询149

9.6 本章小结150

第10章 历史数据管理和流程引擎管理151

10.1 历史数据管理152

10.1.1 历史流程实例查询152

10.1.2 历史任务查询154

10.1.3 历史行为查询157

10.1.4 历史流程明细查询159

10.1.5 删除历史流程实例和历史任务161

10.2 工作的产生162

10.2.1 异步任务产生的工作162

10.2.2 定时中间事件产生的工作164

10.2.3 定时边界事件产生的工作165

10.2.4 定时开始事件产生的工作166

10.2.5 流程抛出事件产生的工作167

10.2.6 工作的执行169

10.3 工作管理170

10.3.1 JobQuery对象170

10.3.2 获取工作异常信息173

10.3.3 设置工作执行次数173

10.4 数据库管理174

10.4.1 查询引擎属性175

10.4.2 数据表信息查询175

10.4.3 数据库操作176

10.4.4 数据表查询177

10.5 本章小结178

第11章 流程事件179

11.1 事件分类180

11.1.1 按照事件的位置分类180

11.1.2 按照事件的特性分类180

11.2 事件定义180

11.2.1 定时器事件定义181

11.2.2 cron表达式181

11.2.3 错误事件定义183

11.2.4 信号事件定义183

11.2.5 消息事件定义184

11.2.6 取消事件定义184

11.2.7 补偿事件定义185

11.2.8 其他事件定义185

11.3 开始事件185

11.3.1 无指定开始事件185

11.3.2 定时器开始事件186

11.3.3 消息开始事件187

11.3.4 错误开始事件189

11.4 结束事件191

11.4.1 无指定结束事件191

11.4.2 错误结束事件191

11.4.3 取消结束事件和取消边界事件193

11.5 边界事件196

11.5.1 定时器边界事件196

11.5.2 错误边界事件198

11.5.3 信号边界事件200

11.5.4 补偿边界事件202

11.6 中间事件205

11.6.1 中间事件分类205

11.6.2 定时器中间事件206

11.6.3 信号中间Catching事件207

11.6.4 信号中间Throwing事件209

11.6.4 消息中间事件211

11.6.5 无指定中间事件211

11.7 补偿中间事件211

11.7.1 补偿执行次数211

11.7.2 补偿执行范围213

11.7.3 补偿的执行顺序217

11.7.4 补偿的参数设置219

11.8 本章小结220

第12章 流程任务221

12.1 BPMN 2.0中的任务222

12.1.1 任务的继承222

12.1.2 XML约束222

12.1.3 任务的类型224

12.2 用户任务225

12.2.1 分配任务候选人225

12.2.2 分配任务受理人226

12.2.3 权限分配扩展227

12.2.4 使用任务监听器进行权限分配228

12.2.5 使用JUEL分配权限229

12.3 脚本任务231

12.3.1 脚本任务231

12.3.2 JavaScript脚本232

12.3.3 Groovy脚本233

12.3.4 设置返回值233

12.3.5 JUEL脚本234

12.4 服务任务235

12.4.1 Java服务任务235

12.4.2 实现JavaDelegate236

12.4.3 使用普通Java Bean237

12.4.4 在Activiti中调用Web Service238

12.4.5 import元素238

12.4.6 itemDefinition元素和message元素239

12.4.7 interface元素与operation元素239

12.4.8 设置Web Service参数与返回值239

12.4.9 发布Web Service240

12.4.10 使用Web Service Task241

12.4.11 JavaDelegate属性注入244

12.4.12 在JavaDelegate中调用Web Service246

12.4.13 Shell任务247

12.5 其他任务249

12.5.1 手工任务和接收任务249

12.5.2 邮件任务250

12.5.3 Mule任务和业务规则任务252

12.6 任务监听器252

12.6.1 使用class指定监听器252

12.6.2 使用expression指定监听器253

12.6.3 使用delegateExpression指定监听器254

12.6.4 监听器的触发254

12.6.5 属性注入255

12.7 流程监听器256

12.7.1 配置流程监听器256

12.7.2 触发流程监听器的事件257

12.8 本章小结259

第13章 其他流程元素260

13.1 子流程261

13.1.1 嵌入式子流程261

13.1.2 调用式子流程263

13.1.3 调用式子流程的参数传递265

13.1.4 事件子流程267

13.1.5 事务子流程269

13.2 顺序流271

13.2.1 条件顺序流272

13.2.2 默认顺序流273

13.3 流程关口275

13.3.1 单向关口275

13.3.2 并行关口277

13.3.3 兼容关口279

13.3.4 事件关口281

13.4 流程活动特性283

13.4.1 多实例活动283

13.4.2 设置循环数据285

13.4.3 获取循环元素286

13.4.4 循环的内置参数288

13.4.5 循环结束条件290

13.4.6 补偿处理者291

13.5 本章小结292

第14章 Activiti与规则引擎293

14.1 概述294

14.1.1 规则引擎Drools294

14.1.2 Drools下载与安装294

14.2 开发第一个Drools应用295

14.2.1 建立Drools环境295

14.2.2 编写规则296

14.2.3 加载与运行296

14.3 Drools规则语法概述297

14.3.1 规则文件结构297

14.3.2 关键字298

14.3.3 规则编译299

14.4 类型声明299

14.4.1 声明新类型300

14.4.2 使用ASM操作字节码301

14.4.3 类型声明的使用302

14.4.4 类型的继承303

14.4.5 声明元数据304

14.5 函数和查询305

14.5.1 函数定义和使用305

14.5.2 查询的定义和使用307

14.6 规则语法308

14.6.1 全局变量308

14.6.2 规则属性310

14.6.3 条件语法313

14.6.4 行为语法316

14.7 Activiti调用规则317

14.7.1 业务规则任务317

14.7.2 制定销售单优惠规则318

14.7.3 实现销售流程321

14.8 本章小结323

第15章 整合第三方框架324

15.1 Spring框架325

15.1.1 Spring的IoC325

15.1.2 Spring的AOP326

15.1.3 使用IoC326

15.1.4 使用AOP327

15.2 Activiti整合Spring328

15.2.1 SpringProcessEngineConfiguration 328

15.2.2 ProcessEngineFactoryBean330

15.2.3 在bean中注入Activiti服务331

15.2.4 在Activiti中使用Spring的bean 331

15.3 Activiti整合Web项目333

15.3.1 安装Tomcat插件334

15.3.2 加入Spring336

15.3.3 整合Hibernate337

15.3.4 配置声明式事务339

15.3.5 添加Struts配置340

15.3.6 实现一个最简单的逻辑340

15.3.7 测试事务342

15.3.8 加入Activiti343

15.4 Mule ESB344

15.4.1 Mule简介344

15.4.2 开发第一个Mule应用344

15.4.3 请求Mule服务345

15.4.4 代理HTTP服务346

15.4.5 Mule与Spring整合347

15.4.6 在Activiti中向Mule发送请求348

15.5 本章小结351

第16章 Activiti开放的Web Service352

16.1 Web Service简介353

16.1.1 Web Service353

16.1.2 SOAP协议353

16.1.3 REST架构353

16.1.4 REST的设计准则354

16.1.5 REST的主要特性354

16.1.6 SOAP RPC与REST的区别355

16.2 Restlet简介355

16.2.1 在Web工程中使用Restlet356

16.2.2 发布REST的Web Service357

16.2.3 编写客户端358

16.2.4 访问控制358

16.2.5 部署Activiti的Web Service361

16.2.6 准备测试数据361

16.2.7 查询流程引擎信息362

16.2.8 使用HttpClient编写客户端362

16.2.9 使用CXF编写客户端363

16.3 流程存储服务364

16.3.1 上传部署文件364

16.3.2 部署数据查询366

16.3.3 部署资源查询367

16.3.4 查询单个部署资源368

16.3.5 删除部署资源369

16.3.6 删除多个部署资源370

16.4 流程服务371

16.4.1 查询流程定义集合371

16.4.2 流程定义表单属性372

16.4.3 查询流程定义表单373

16.4.4 查询流程图373

16.4.5 启动流程373

16.4.6 查询流程实例集合374

16.4.7 查询单个流程实例374

16.4.8 查询流程图片375

16.4.9 查询流程实例任务376

16.4.10 发送信号376

16.5 流程任务服务377

16.5.1 查询任务摘要377

16.5.2 获取任务集合378

16.5.3 查询单个任务379

16.5.4 查询任务表单379

16.5.5 任务操作379

16.6 身份服务380

16.6.1 身份验证380

16.6.2 查询用户380

16.6.3 查询用户所属的用户组381

16.6.4 查询用户组381

16.6.5 查询用户组下的用户381

16.7 管理服务382

16.7.1 工作管理382

16.7.2 数据库管理382

16.8 本章小结382

第17章 Activiti功能进阶384

17.1 流程虚拟机385

17.1.1 概述385

17.1.2 初试PVM385

17.1.3 自定义流程语言386

17.1.4 执行流程语言389

17.2 Activiti的表单391

17.2.1 概述392

17.2.2 表单属性392

17.2.3 外部表单393

17.2.4 关于动态工作流和动态表单394

17.3 流程图XML394

17.3.1 节点元素395

17.3.2 衔接元素395

17.3.3 流程图与流程文件的转换395

17.4 流程操作397

17.4.1 流程回退397

17.4.2 会签398

17.5 本章小结400

第18章 办公自动化系统401

18.1 使用技术402

18.1.1 表现层技术402

18.1.2 MVC框架402

18.1.3 Spring和Hibernate402

18.2 功能简述403

18.2.1 系统的角色管理403

18.2.2 薪资计算流程403

18.2.3 请假流程403

18.2.4 薪资调整流程403

18.2.5 报销流程404

18.3 框架整合404

18.3.1 创建Web工程404

18.3.2 加入Spring406

18.3.3 加入Hibernate407

18.3.4 整合Struts2408

18.3.5 整合Activiti409

18.4 数据库设计410

18.4.1 薪资表410

18.4.2 请假记录表411

18.4.3 薪资调整记录表412

18.4.4 报销记录表412

18.5 初始化数据413

18.5.1 初始化角色数据413

18.5.2 薪资计算流程414

18.5.3 请假流程415

18.5.4 报销流程415

18.5.5 薪资调整流程416

18.6 角色管理418

18.6.1 用户组管理418

18.6.2 用户列表420

18.6.3 新建用户421

18.6.4 用户登录422

18.7 流程启动423

18.7.1 启动请假流程423

18.7.2 启动报销流程426

18.7.3 启动薪资调整流程428

18.8 申请列表429

18.8.1 申请列表429

18.8.2 请假申请列表430

18.8.3 报销申请列表431

18.8.4 薪资调整列表431

18.8.5 查看流程图432

18.9 流程任务434

18.9.1 待办任务列表434

18.9.2 领取任务与受理任务列表436

18.9.3 查询任务信息437

18.9.4 任务审批439

18.9.5 运行OA的流程439

18.10 本章小结440

发表评论(对文章涉及的知识点还有疑问,可以在这里留言,老高看到后会及时回复的。)

表情