《疯狂工作流讲义:基于Activiti 6.x的应用开发》是一本介绍Java工作流领域的书,以Activiti为核心,内容囊括了多个流行的企业级Java EE框架,《疯狂工作流讲义:基于Activiti 6.x的应用开发》主要可分为以下几个部分:
第一部分:对Activiti的基础知识进行讲解,包括框架起源、基本的设计模式、数据库设置以及框架配置等,该部分知识可以帮助读者对Activiti的基础有一个更深入的认识,对Activiti的设计有一个初步的印象,该部分内容也可以作为整合Activiti到项目中的参考。
第二部分:从源代码的实现上讲解Activiti各个模块的API,除了讲述这些API的作用外,还会引领读者深入到这些API的内部,此部分内容可以作为一份详细的Activiti API的帮助文档。
第三部分:详细讲述了BPMN2.0规范的内容,包括目前Activiti对该规范的实现情况,在讲解BPMN2.0规范时,将规范与Activiti的实现进行结合,在通俗易懂的案例下,对Activiti的实现以及BPMN2.0规范有更深入的了解。
第四部分:Activiti8 支持DMN规范,本书将在第15章中讲述Activiti基于DMN规范的规则引擎。Activiti的规则引擎目前尚未正式面世,笔者研读当前版本的源代码,带领读者优先体会Activiti的规则引擎。
第五部分:如何在实际企业应用使用Activiti,并与其他流行的开源框架进行整合,包括企业应用开发所必须的Web Service、企业服务总线、规则引擎、IoC框架和ORM框架等,除了本书主要的Activiti知识外,这些企业中常用框架的知识,也可以在该部分内容得到体现,通过学习这部分内容,可以极大丰富读者的实战知识,让读者可以成为一个更全面的技术人员。
第六部分:在第18章中讲述了Activiti的核心架构以及Activiti的表单知识,本书最后一章,通过讲解一个办公系统的开发过程,让读者更了解Activiti在实际生产中的使用,让本书的内容不仅仅停留在理论的层次,更为读者开辟了实践的道路。
基于Activiti 6全新版本,浓缩作者多年企业应用开发经验
前 言
当今技术发展一日千里,各种技术框架如雨后春笋般涌现,技术正在改变世界、改变生活。作者从业十余年,面对如此变幻莫测的世界,亦难岿然不动,面对日新月异的知识,时常怀着一颗谦卑的心。只有学习,才能带来快乐,才不会被淘汰。程序是枯燥的,但程序又是美丽的,看似冷冰冰的代码,实则丰富多彩。
Java是目前世界上应用最广泛的语言,在Java领域出现了众多优秀的框架和组件,这些组件正在慢慢提高编程的效率,使得编程这项原本枯燥的工作变得更为优雅与简单。在工作流领域,涌现出多个使用Java语言编写的框架,如OpenWFE、jBPM、Shark,甚至在国内市面上出现了不少国产的工作流引擎。近年来,出现了一款“全新”的工作流框架Activiti,经过几年的发展,Activiti已经成为一款成熟的工作流产品。笔者在2014年,基于Activiti 5.0版本,编写了《疯狂Workflow讲义》第一版,Activiti 6.0在2017年发布,为了帮助广大的Java研发者学习新框架,笔者对《疯狂Workflow讲义》进行升级,并将多年的实践经验融入本书中。
本书经过约半年的编写,至今能得以付梓,得益于多方襄助,对他们的感激之情,难以言表。感谢传道并解惑的恩师,感谢聪颖而好学的读者,感谢善良和亲爱的家人,笔者会谢意永存、铭感不忘。
本书内容概括
本书是一本介绍Java工作流领域的书,以Activiti为核心,内容囊括了多个流行的企业级Java EE框架,全书主要可分为以下几个部分。
第一部分:对Activiti的基础知识进行讲解,包括框架起源、基本的设计模式、数据库设置以及框架配置等,该部分知识可以帮助读者对Activiti有一个较为深入的认识,对Activiti的设计有一个初步的印象,该部分内容也可以作为整合Activiti到项目中的参考。
第二部分:从源代码的实现上讲解Activiti各个模块的API,除了讲述这些API的作用外,还会引领读者深入到这些API的内部,此部分内容可以作为一个详细的Activiti API的帮助文档。
第三部分:详细讲述了BPMN 2.0规范的内容,包括目前Activiti对该规范的实现情况。在讲解BPMN 2.0规范时,将规范与Activiti的实现进行结合,让读者在通俗易懂的例子示范下,对Activiti的实现及BPMN 2.0规范有较为深入的了解。
第四部分:Activiti 6支持的DMN规范,本书将在第15章中讲述Activiti基于DMN规范的规则引擎。Activiti的规则引擎目前尚未正式面世,笔者研读了当前版本的源代码,并带领读者优先体会了Activiti的规则引擎。
第五部分:讲述如何在实际企业应用中使用Activiti,并与其他流行的开源框架进行整合,包括企业应用开发所必须使用的Web Service、企业服务总线、规则引擎、IoC框架和ORM框架等。除了主要的Activiti知识外,企业中常用框架的知识,也在该部分内容中得到了体现。通过学习这部分内容,可以极大丰富你的实战知识,让你成为一个更全面的技术人员。
第六部分:在第18章中讲述了Activiti的核心架构及Activiti的表单知识,本书最后一章,通过讲解一个办公系统的开发过程,让读者更了解Activiti在实际生产中的应用,从而理论层面,走上实践的道路。
本书特点
笔者长期工作于企业的IT部门,有着丰富的企业应用开发经验,因此本书具有以下特点。
1. 内容深入
从笔者接触编程开始,就养成了查看源代码的习惯,书中的示例不仅仅能帮助理解Activiti的功能,更借鉴了Activiti的思路去模拟功能的实现,所以读者能够深入了解其中的原理。
2. 开发环境与示例更贴近实际
本书中示例的开发环境、使用的框架及工具均来自企业的实际应用,示例的选取与研发过程更贴近实际。
3. 注释详细
本书的代码几乎每行都有注释,读者可以很容易地了解代码的意思,轻松掌握相应的知识。
本书写给谁看
如果你有一定的Java语言基础,进行过Web项目的开发,对工作流有一定的认识,那么本书可以帮助你提升关于工作流的知识水平。如果你是一个从事过企业应用开发的程序员,本书同样适合你,本书的知识可以帮助你深入理解工作流引擎,使你可以将这些工作流框架应用到实际的企业生产中。
衷心感谢
首先非常感谢李刚老师,一直以来,他既是我的老师,也是我的技术后盾,非常幸运人生能有这样一位良师益友。
其次感谢出版社的编辑,为本书的出版做了很多细致的工作,并为本书提出了许多宝贵的意见。
最后感谢我的家人,你们是我前进的动力。