springboot2.2.1集成activiti5.22

springboot2.12集成Activiti5.22

工作中遇到项目业务中有复杂的流程体系,于是考虑引入工作流。对比了几款开源工作流引擎,最终选择activiti。在版本选择上选择了比较稳定用的最多的5.22版本。6.0版本以后对activiti进行重构,用法变化较大,以后有机会再研究。

activiti 5.22 集成springboot2.2.1

前提:项目已有web服务基础,可以对外提供restful接口,并能查询MySQL数据库获取数据。

1、引入activiti5.22依赖包,只需要这一个包

<dependency>
    <groupId>org.activiti</groupId>
	<artifactId>activiti-spring-boot-starter-basic</artifactId>
	<version>5.22</version>
</dependency>

若是新起服务,无web服务基础和MySQL数据库查询则还需引入以下依赖包:

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
		
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
</dependency>

2、增加application.properties配置

#自动检查、部署流程定义文件
spring.activiti.check-process-definitions=false

3、增加activiti配置文件

@Component
public class ActivitiConfig implements ProcessEngineConfigurationConfigurer {
    @Override
    public void configure(SpringProcessEngineConfiguration springProcessEngineConfiguration) {
        springProcessEngineConfiguration.setActivityFontName("宋体");
        springProcessEngineConfiguration.setLabelFontName("宋体");
        springProcessEngineConfiguration.setAnnotationFontName("宋体");

        springProcessEngineConfiguration.setDbIdentityUsed(true);
        springProcessEngineConfiguration.setDatabaseSchemaUpdate("true");
    }
}

其中, springProcessEngineConfiguration.setDbIdentityUsed(true); 如果使用工作流自带用户表结构则需要设置为true,否则,不会生成工作流相关用户表。

4、启动服务

服务启动时会去检查工作流相关表是否存在,若不存在则创建。

若启动时报错,显示工作流相关表不存在,但自己当前库里确实没有这些表,则因为你可能在当前数据库服务器下某个库中已经创建了相关表。只需将已经创建的相关表备份删除再次启动服务即可。

打开数据库发现已新增28张表:

在这里插入图片描述

则springboot2.12与Activiti5.22就集成好了。工作流一个很核心的就是业务流程图绘制,后续文档将集成在线流程图绘制工具,请持续关注。

5、结论

本来觉得activiti发展这么久,找个教程集成到springboot应该很简单,没想到实际却花了大半天时间。本文参考几篇文章,经过亲自尝试,汇总如上,仅做记录,供后续翻找用,以节约时间。

6、参考文章

activiti5.22 springboot 流程引擎 实战全过程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值