02-常见的工作流框架

Activiti意思是事件(动作)  没人去考你概念,关键还是理解。工作流(Workflow)就是"业务过程的部分或整体在计算机应用环境下的自动化",它就是这么一类流程的相关的问题。

1.了解工作流

       工作流(Workflow),就是“业务过程的部分或整体在计算机应用环境下的自动化”,它主要解决的是“使在多个参与者之间按照某种预定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目标,或者促使此目标的实现”。

       工作流管理系统(Workflow Management System, WfMS)是一个软件系统,它完成工作量的定义和管理,并按照在系统中预先定义好的工作流逻辑进行工作流实例的执行。工作流管理系统不是企业的业务系统,而是为企业的业务系统的运行提供了一个软件的支撑环境。

       像我们这个Activiti就是一个工作流管理系统,其实你可以认为它是一个框架。工作流不是框架,它指的是这么一类问题对不对。

       MVC(不是框架,指的是一种思想)-struts 2(实现MVC思想的一个具体框架)

      工作流(可以认为是这么一类问题)------activiti(指的就是一个具体的框架,具体的一个工作流框架)

      不要认为我们今天讲的工作流是一个框架,Activiti才是一种具体的框架。

2. 常见的工作流框架

       Activity5.13、JBPM4.4(JBossBusinessProcessManagement,虽然经典但是比较老了,所以从去年更新成Activiti框架)、OSWorkFlow、WorkFlow

       其实工作流框架大体的套路都差不多,流程的执行过程中要产生很多数据,没有一个月你是辞不下来的,老师辞职提交申请审批的节点有几十个人,得几十个人同意老师才能辞职,一个半月才完事,你想想这个流程有多复杂。这其实在我们这些流程当中还算是比较简单的了。几十个节点,每一个人审批我都得把这些信息全部记录下来。所以说每一个工作流框架它底层都是由表结构支持的。每一次你执行目标操作,你提交申请或者说你审批一下,这都要产生数据,这些数据都需要存储下来。

       工作流框架底层需要有数据库提供支持,activiti5.13版本,有23张表。activiti5.16,有24张表。不同的框架它的表是不一样的。JBPM4.4框架底层有数据库支持,18张表。最经典的版本是4.4,一般人们用JBPM都是使用4.4。其他版本的JBPM老师也没有用过。虽然说它底层是由这么多张表支持的,但是用不着自己写sql语句去操作这十几张表,那太费劲了。我们只需要操作这个框架给我们提供的API就可以了。由框架给我们发SQL去操作数据库。我们就简单了,我们不用自己写SQL语句。JBPM底层使用hibernate操作数据库。Hibernate属于面向对象的ORM框架。Activiti框架底层使用的mybatis操作数据库。hibernate就一个感觉:慢。它这个性能非常非常慢,发的SQL语句我们自己不能控制的。

posted on 2017-02-07 16:27  绿茵好莱坞  阅读(1575)  评论(0编辑  收藏  举报

导航