Activiti工作流学习之概述(一)

一、工作流介绍

  我第一次听到这个词,是蒙逼的,再看百度百度,更傻眼了,完全说的不像人话啊,举几个生活中的例子,就明白多了比如:请假、报销等等,如果文字太过抽象,请看图:

二、工作流引擎

 ProcessEngine对象,这是Activiti工作的核心。负责生成流程运行时的各种实例及数据、监控和管理流程的运行。(稍后可见它的威力)

三、BPMN

  业务流程加建模与标注(Business Process Model and Notation,BPMN)描述流程的基本符号,包括这些图元如何组合成一个业务流程图(Business Process Diagram)

四、数据库(25张表)

  Activiti支持的数据库有:h2, mysql, oracle, postgres, mssql, db2等。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_*:通用数据,用于不同场景下,如存放资源文件

           

 五、非插件方式画流程图

  网上有很多关于Eclipse、IDEA等IDE插件通过拖拽的方式来画工作流程图,个人觉得还是不够好,所以花点时间研究了一下Activiti在线设计器,并与SpringBoot整合,期间也遇到了很多问题,看了很多资料,例如b站视频:https://www.bilibili.com/video/av36668918?from=search&seid=8976141060328773015(个人觉得讲的挺详细的),以及这篇博客:http://jmysql.com/activiti/126.html,学习了大牛们的视频和文章以后,自己也该做一些记录:Activiti工作流学习之SpringBoot整合Activiti5.22.0实现在线设计器(二)

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )