Flowable 学习笔记

作者: 萌狼爱爪爪猫 | 来源:发表于2018-12-20 11:52 被阅读0次

    一、Flowable 入门介绍

    官网地址:https://www.flowable.org/

    Flowable6.3中文教程:https://tkjohn.github.io/flowable-userguide/#_introduction

    可以在官网下载对应的jar包在本地部署运行,官方提供了下面的五个应用程序:


    Flowable Modeler:流程定义管理

    Flowable Task:用户任务管理

    Flowable IDM:用户组权限管理

    Flowable REST API:流程引擎对外提供的API接口

    Flowable Admin:后台管理


    二、初识Flowable五大引擎

    Flowable有五大引擎,每个之间都是相互独立互不影响。

    ProcessEngine是里面最核心也是最重要的一个引擎,如果失去它那Flowable也就意义了。

    五大引擎

    三、流程引擎使用架构

    Flowable引擎在使用前需要先通过配置来初始化ProcessEngine。

    初始化ProcessEngineConfiguration一般有两种方式:

    1.通过Spinrg配置文件进行依赖注入,通过flowable.cfg.xml文件来初始化ProcessEngineConfiguration(这里的文件名必须为flowable.cfg.xml,否则Flowable识别不到)

    2.通过编写程序的方式来构造ProcessEngineConfiguration对象

    流程引擎API架构图 模型图

    ProcessEngineConfiguration在初始化过程中会同时初始化数据库,如果数据库已经存在,则不会做创建更新操作,如果数据库不存在,则会默认执行数据库创建脚本。

    四、流程引擎初体验

    1.简单了解Bpmn

    1.1Task任务:

    用户任务(userTask)

    系统任务(serviceTask )

    1.2Event事件:

    定时器事件(timerEventDefinition)

    1.3Gateway网关:

    排他网关(exclusive gateway)

    2.目标:实现以下简化版的请假流程

    请假流程图(简单版)

    步骤1:定义相应的BPMN文件

    步骤2:配置flowable.cfg.xml

    步骤3:将流程定义添加到Repository仓储中

    步骤4:Runtime开始一个流程实例

    五、Flowable的用户权限体系

    在接入Flowable的用户权限体系的时候,有四种方式:

    1.使用Flowable提供的默认IdmEngine进行用户体系管理,该引擎包含了用户、组的概念。

    2.集成LDAP,实现轻量级用户权限管理。通过IdentityService进行认证,用于由IdentityService处理所有认证业务的场景。

    3.实现IdmIdentityService接口,自定义实现用户、组的查询

    4.接入自定义的权限体系

    用户id => 获取到租户id、角色id集、部门id集

    4.1单用户(assignee="用户id")、多用户(candidateUsers="用户id1,用户id2")

    4.2单角色、多角色(candidateGroups=":角色id1,:角色id2")

    4.3单部门、多部门(candidateGroups="部门id1:,部门id2:")

    4.4角色或部门(candidateGroups="角色id1:, :部门id1")

    4.5角色且部门

    六、数据库介绍

    ACT_RE_ *:RE代表repository。具有此前缀的表包含静态信息,例如流程定义和流程资源(图像,规则等)。

    ACT_RU_ *:RU代表runtime。这些是包含运行时的流程实例,用户任务,变量,作业等的运行时数据的运行时表。Flowable仅在流程实例执行期间存储运行时数据,并在流程实例结束时删除记录。这使运行时表保持小而快。

    ACT_HI_ *:HI代表history。这些是包含历史数据的表,例如过去的流程实例,变量,任务等。

    ACT_GE_ *:general数据,用于各种用例。

    ACT_ID_*:Idm的用户、组

    =====================================================

    ACT_HI_ACTINST 流程实例的历史运行节点表

    ACT_HI_TASKINST 流程实例的历史任务表

    ACT_HI_VARINST 流程实例的历史运行节点的变量表

    ACT_HI_PROCINST 流程历史部署记录

    ACT_HI_IDENTITYLINK 对应ACT_RU_IDENTITYLINK的历史记录表

    ACT_RE_DEPLOYMENT 流程部署

    ACT_RE_PROCDEF 流程定义表

    ACT_RU_EXECUTION 流程实例执行过程的所有节点记录

    ACT_RU_IDENTITYLINK 流程实例运行过程中,各节点对应的用户

    ACT_RU_TASK 流程实例运行时的任务表

    ACT_RU_VARIABLE 流程实例运行时节点的变量表

    ACT_GE_BYTEARRAY 资源文件表

    相关文章

      网友评论

        本文标题:Flowable 学习笔记

        本文链接:https://www.haomeiwen.com/subject/vhyekqtx.html