Activiti
Activiti 是一个针对企业用户、开发人员、系统管理员的轻量级工作流业务管理平台,其核心是使用 Java 开发的快速、稳定的 BPMN2.0 流程引擎。它可以与 Spring 完美集成。
BPMN
BPMN 是 Business Process Modeling Nodtation 的简称,即业务流程建模与标注。
BPMN 定义了一个业务流程图,这个流程图被设计用于创建业务流程操作的图形化模型。而一个业务流程模型(Business Process Model),指一个由图形对象(graphical objects)组成的网状图,图形对象包括活动(activities)和用于定义这些活动执行顺序的流程控制器(flow controls)。
服务接口
Activiti 提供了7个服务接口,都通过 ProcessEngine 来获取,并且支持链式编程风格。
服务接口 | 说明 |
---|---|
RepositoryService | 仓库服务,用于管理仓库,比如部署或删除流程定义、读取流程资源等。 |
IdentifyService | 身份服务,管理用户、组以及它们之间的关系。 |
RuntimeService | 运行时服务,管理所有正在运行的流程实例、任务等对象。 |
TaskService | 任务服务,管理任务。 |
FormService | 表单服务,管理和流程、任务相关的表单。 |
HistroyService | 历史服务,管理历史数据。 |
ManagementService | 引擎管理服务,比如管理引擎的配置、数据库和作业等核心对象。 |
Idea Spring Boot + Activiti 6 + MySQL Demo
环境准备
Idea 安装 actiBPM 插件:2020版本搜不到actiBPM,可以去官网搜索下载。https://plugins.jetbrains.com/
通过 File -> Settings -> Plugins -> 齿轮 -> Install Plugin from Disk -> 选中下载的jar,然后reset。
创建项目
新建一个 Spring Booot 项目,名为ActiDemo ,包名为 com.example.demo 。
pom.xml 中添加相关依赖。
1 | <dependency> |
application.properties 配置
1 | 8200 = |
在启动类注解后加上配置。
1 | .class) (exclude = SecurityAutoConfiguration |
创建流程图
在 src/resources 下,创建 processes 文件夹,然后新建一个 test.bpmn ,创建一个简单的流程图。
若出现中文乱码问题,则按照下图修改相关设置,然后重启Idea。
简单测试
创建 DemoController
1 |
|
启动项目
浏览器输入 http://127.0.0.1:8200/test/demo ,查看控制台。
1 | 流程创建成功,当前流程实例ID:22509 |