涉及简单审批时一般都是有人发起,再由另外一人确认审核即可!
实际项目中有时涉及利益的时候,比如常见的请假,报销等,就不是那么简单一人审核了事!
其中有权力和责任的体现,同时执行过程中也涉及业务流程管理、工作流、服务协作等,此时开源Activiti就是个不错的选择!现介绍Spring Boot整合activiti-6.0步骤如下!
activiti-6.0依赖添加
- <dependency>
- <groupId>org.activitigroupId>
- <artifactId>activiti-spring-boot-starter-basicartifactId>
- <version>6.0.0version>
- dependency>
因为Activiti需要依赖数据库存储流程及审核过程中各种数据,需要配置数据源!
可参阅:工作流-Activity 运行时信息表结构
- ######################### 数据库 配置##############################
- spring.datasource.type=com.zaxxer.hikari.HikariDataSource
- spring.datasource.name=hikari_activity
- spring.datasource.url=jdbc:mysql://127.0.0.1:3306/song-activiti?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
- spring.datasource.hikari.username=root
- spring.datasource.hikari.password=123456
- spring.datasource.hikari.driver-class-name=com.mysql.cj.jdbc.Driver
- spring.datasource.hikari.connection-timeout=20000
备注:Spring Boot默认HikariCP做数据源!
该步骤关键是自动初始化activiti库
- # 是否校验流程文件,默认校验resources下的processes文件夹里的流程文件
- spring.activiti.check-process-definitions=false
- # create_drop:在Activiti启动时创建表,在关闭时删除表(必须手动关闭引擎,才能删除表)
- # drop-create:在Activiti启动时删除原来的旧表,然后在创建新表(不需要手动关闭引擎)
- # true:Activiti会对数据库中所有表进行更新操作。如果表不存在,则自动创建
- spring.activiti.database-schema-update=true
其在首次启动时自动建表
若能正常启动成功,说明整合配置成功,接下来就是Activiti的API的调用使用了,相关资料网上众多,不在此赘述了!