环境准备
- maven引入jar包
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-spring-boot-starter-basic</artifactId>
<version>6.0.0</version>
</dependency>
- 开发IDE安装画流程插件
插件里面搜索关键字:actiBPM,然后安装重启IDE即可
- 源码地址
activity简介
- 什么是工作流
工作流(Workflow),就是“业务过程的部分或整体在计算机应用环境下的自动化”,它主要解决的是“使在多个参与者之间按照某种预定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目标,或者促使此目标的实现” 。 通俗的说,流程就是多个人在一起合作完成某件事情的步骤,把步骤变成计算机能理解的形式就是工作流。
现在的标准是: BPMN 2.0
常用框架:Activiti、JBPM、Shark、OSWorkflow、ActiveBPEL、YAWL等
- Activiti数据表清单
| NO | 表名 | 解释 |
|---|---|---|
| 1 | ACT_GE_BYTEARRAY | 通用的流程定义和流程资源(png图) |
| 2 | ACT_GE_PROPERTY | 系统相关属性 |
| 3 | ACT_HI_ACTINST | 历史的流程实例 |
| 4 | ACT_HI_ATTACHMENT | 历史的流程附件 |
| 5 | ACT_HI_COMMENT | 历史的说明性信息 |
| 6 | ACT_HI_DETAIL | 历史的流程运行中的细节信息 |
| 7 | ACT_HI_IDENTITYLINK | 历史的流程运行过程中用户关系 |
| 8 | ACT_HI_PROCINST | 历史的流程实例 |
| 9 | ACT_HI_TASKINST | 历史的任务实例 |
| 10 | ACT_HI_VARINST | 历史的流程运行中的变量信息 |
| 11 | ACT_ID_GROUP | 身份信息-组信息 |
| 12 | ACT_ID_INFO | 身份信息-组信息 |
| 13 | ACT_ID_MEMBERSHIP | 身份信息-用户和组关系的中间表 |
| 14 | ACT_ID_USER | 身份信息-用户信息 |
| 15 | ACT_RE_DEPLOYMENT | 部署单元信息 |
| 16 | ACT_RE_MODEL | 模型信息 |
| 17 | ACT_RE_PROCDEF | 已部署的流程定义 |
| 18 | ACT_RU_EVENT_SUBSCR | 运行时事件 |
| 19 | ACT_RU_EXECUTION | 运行时流程执行实例 |
| 20 | ACT_RU_IDENTITYLINK | 运行时用户关系信息 |
| 21 | ACT_RU_JOB | 运行时作业 |
| 22 | ACT_RU_TASK | 运行时任务 |
| 23 | ACT_RU_VARIABLE | 运行时变量表 |
设计流程模板方式
- 画流程模板的方法很大,这边有个画模板的网站,但是要用在项目中,还需要修改文件 去画模板
- 可以springboot+activiti-modeler 自己搭建在线流程设计服务,可以将此服务嵌入自己的项目中,下文demo,展示了这个流程设计器
- 可以在开发IDE中安装插件actiBPM,然后在IDE中画流程模板,这个体验比较差,很耗IDE内存,不建议使用
需要主要的是:在外部设计好的模板作为资源文件部署时候,activiti 的模版必须以 bpmn20.xml 或者 bpmn结尾
其他
- activity有自己的security权限验证,如果要嵌入自己的项目,而项目中已经有权限校验,需要禁用登录验证