Activiti工作流-简介篇

一、前言

工作流(Workflow),就是“业务过程的部分或整体在计算机应用环境下的自动化”。在工作中慢慢接触的业务流程,就向流程控制语言一样,一步一步都对应的不同的业务,但整体串联起来就是一个完整的业务。而且实际工作中尤其是在企业内部系统的研发中,确实需要对应许多审批流程的管理。而工作流就是能够在程序中,将这些支离破碎的流程,通过配置的方式管理起来,整体作为一个流程,方便修改,也方便维护。

demo:

我们在学生时代,肯定会遇到请假写请假条的情况,如果学校的请假抓得非常严,就需要经过多层的同意才能确定能不能请假…
在这里插入图片描述

班主任->任课老师->教学总监->校长这么一个流程,首先我们先明确一点:我们作为一个学生,不可能直接跳过老师,去找校长申请请假的.因此我们请假的流程是一步一步的,并不能做跳跃。对上面的请假流程进行分析**,如果我们没有使用框架,而把这么一个请假流程写到我们的网站中,我们会怎么做呢???


二、什么是Activiti工作流框架?

Activiti是一个比较出名的框架,或者说就是一个工作流引擎,通俗的说,就是Activiti引擎我们只要按照它已有的配置,来进行现有业务的对应,它就能够自动帮助我们完成以前不好控制的流程问题。

官网通用打包下载:http://www.activiti.org/
源代码github:https://github.com/Activiti/Activiti

在这里插入图片描述

三、采用工作流框架优点

1、提高系统的柔性,适应业务流程的变化
2、实现更好的业务过程控制,提高顾客服务质量
3、降低系统开发和维护成本


四、快速入门Activiti

1.Activiti的开发步骤:

1.首先就要把这个工作流定义出来(Activiti支持以“图”的方式来定义)
2.定义完工作流,就要部署到起来
3.随后我们就执行该工作流!

但是在实际开发中,让用户来画Activiti定义图,是要学习的成本的。所以我们会以一个更简单的方式来定义流程,比如选好流程审批节点对应的用户,这样就定义好了一个流程。
在这里插入图片描述

在这里插入图片描述


2.数据库相关(23张表)

Activiti的后台是有数据库的支持,所有的表都以ACT_开头。 第二部分是表示表的用途的两个字母标识。 用途也和服务的API对应。

  1. ACT_RE_*: 'RE’表示repository。 这个前缀的表包含了流程定义和流程静态资源 (图片,规则,等等)。
  2. ACT_RU_*: 'RU’表示runtime。 这些运行时的表,包含流程实例,任务,变量,异步任务,等运行中的数据。 Activiti只在流程实例执行过程中保存这些数据, 在流程结束时就会删除这些记录。 这样运行时表可以一直很小速度很快。
  3. ACT_ID_*: 'ID’表示identity。 这些表包含身份信息,比如用户,组等等。
  4. ACT_HI_*: 'HI’表示history。 这些表包含历史数据,比如历史流程实例, 变量,任务等等。
  5. ACT_GE_*: 通用数据, 用于不同场景下,如存放资源文件。
    在这里插入图片描述
资源库流程规则表
  1. act_re_deployment 部署信息表
  2. act_re_model 流程设计模型部署表
  3. act_re_procdef 流程定义数据表
运行时数据库表
  1. act_ru_execution运行时流程执行实例表
  2. act_ru_identitylink运行时流程人员表,主要存储任务节点与参与者的相关信息
  3. act_ru_task运行时任务节点表
  4. act_ru_variable运行时流程变量数据表
历史数据库表
  1. act_hi_actinst 历史节点表
  2. act_hi_attachment历史附件表
  3. act_hi_comment历史意见表
  4. act_hi_identitylink历史流程人员表
  5. act_hi_detail历史详情表,提供历史变量的查询
  6. act_hi_procinst历史流程实例表
  7. act_hi_taskinst历史任务实例表
  8. act_hi_varinst历史变量表
组织机构表
  1. act_id_group用户组信息表
  2. act_id_info用户扩展信息表
  3. act_id_membership用户与用户组对应信息表
  4. act_id_user用户信息表
通用数据表
  1. act_ge_bytearray二进制数据表
  2. act_ge_property属性数据表存储整个流程引擎级别的数据,初始化表结构时,会默认插入三条记录。

把这些东西了解清楚了,那接下我们开始怎么在Activiti框架上实现我们的工作流呢???

地址:https://destinywang.github.io/blog/2018/11/26/Activiti%E5%B7%A5%E4%BD%9C%E6%B5%81%E5%BC%95%E6%93%8E/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值