Flowable process engine learning summary

A, Flowable introductory presentation

Official website address: https: //www.flowable.org/

Flowable6.3 Chinese Tutorial: https: //tkjohn.github.io/flowable-userguide/#_introduction

Can be downloaded at the official website of the corresponding jar package in the local deployment operation, the official provides the following five applications:


Flowable Modeler: Process Definition Management

Flowable Task: User Task Management

Flowable IDM: user group rights management

Flowable REST API: API interfaces to provide both process engine

Flowable Admin: Admin


Second, the acquaintance Flowable five engine

Flowable has five engines simultaneously and are independent of each.

ProcessEngine which is the most central and most important one engine, if it loses that Flowable will make sense.

Five engines

Third, the process engine using architecture

Flowable engine before use need to initialize ProcessEngine through configuration.

Initialization ProcessEngineConfiguration there are two ways:

1. By Spinrg configuration file dependency injection to initialize ProcessEngineConfiguration by flowable.cfg.xml file (where the file name must be flowable.cfg.xml, otherwise Flowable not recognize)

2. ProcessEngineConfiguration to construct the object by writing a program mode

Process Engine API Chart

Model Diagram

ProcessEngineConfiguration during initialization will also initialize the database, if the database already exists, do not create an update operation, if the database does not exist, create a script will execute the default database.

Fourth, the process engine first experience

1. Simple to understand Bpmn

1.1Task tasks:

User tasks (userTask)

System tasks (serviceTask)

1.2Event event:

Timer Event (timerEventDefinition)

1.3Gateway Gateway:

排他网关(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 资源文件表

 

发布了36 篇原创文章 · 获赞 0 · 访问量 936

Guess you like

Origin blog.csdn.net/ityw520/article/details/104287493