欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 建筑 > springboot整合Activiti7流程引擎

springboot整合Activiti7流程引擎

2025/3/10 18:23:06 来源:https://blog.csdn.net/weixin_66196770/article/details/140739096  浏览:    关键词:springboot整合Activiti7流程引擎

Activiti是一款开源的流程引擎,可以使用Bpmn2.0的标准来绘制bpm工作流;

在我们的日常开发中会经常用到,activiti提供了一款官方的idea插件(Activiti BPMN virtual)来帮助我们开发者可以在idea中快速的绘制流程图并完成开发工作

下面简单介绍一下如何在springboot中整合Activiti

首先我们需要导入依赖

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId>
</dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId>
</dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId>
</dependency><dependency><groupId>org.activiti</groupId><artifactId>activiti-spring-boot-starter</artifactId><version>7.0.0.GA</version>
</dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.33</version>
</dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId>
</dependency>

由于Activiti在运行的时候是需要数据表的支持的,所以这里引入了mysql的依赖

然后我们需要对activiti做一些基础配置

spring:datasource:url: jdbc:mysql://localhost:3306/activitiusername: rootpassword: 123456driver-class-name: com.mysql.cj.jdbc.Driveractiviti:# 1.false:默认值。activiti在启动时,对比数据库表中保存的版本,如果没有表或者版本不匹配,将抛出异常。# 2.true:activiti会对数据库中所有表进行更新操作。如果表不存在,则自动创建# 3.create-drop:在activiti启动时创建表,在关闭时删除表(必须手动关闭引擎,才能删除表)# 4.drop-create:在activiti启动时删除原来的旧表,然后在创建新表(不需要手动关闭引擎)# 检测历史表是否存在 activiti7 默认没有开启数据库历史记录  启动数据库历史记录database-schema-update: truedb-history-used: true# 记录历史等级 可配置的历史级别有 none、activity、audit、full# none:不保存任何的历史数据,因此,在流程执行过程中,这是最高效的。# activity:级别高于none,保存流程实列与流程行为,其他数据不保存。# audit:除了activity级别会保存的数据外,还会保存全部的流程任务及其属性。audit为history的默认值。# full:保存历史数据的最高级别,除了会保存audit级别的数据外,还会保存其他全部流程相关的细节数据,包括一些流程参数等。history-level: full# 校验流程文件,默认校验resource下processes文件夹里的流程文件。# 自动部署验证设置:true-开启(默认)、false-关闭check-process-definitions: true# 流程定义文件存放目录,默认路径为 classpath:/processes/process-definition-location-prefix: classpath:/bpmn/
server:port: 8080

以上就是springboot整合Activiti的一个简单的demo,在运行第一次之后,你的数据库应该会多出25张表,是Activiti用于运行所需要的

Activiti 使用到的表都是 ACT_ 开头的。表名的第二部分用两个字母表明表的用途。

  • ACT_GE_ (GE) 表示 general 全局通用数据及设置,各种情况都使用的数据。
  • ACT_HI_ (HI) 表示 history 历史数据表,包含着程执行的历史相关数据,如结束的流程实例,变量,任务,等等
  • ACT_ID_ (ID) 表示 identity 组织机构,用户记录,流程中使用到的用户和组。这些表包含标识的信息,如用户,用户组,等等。
  • ACT_RE_ (RE) 表示 repository 存储,包含的是静态信息,如,流程定义,流程的资源(图片,规则等)。
  • ACT_RU_ (RU) 表示 runtime 运行时,运行时的流程变量,用户任务,变量,职责(job)等运行时的数据。Activiti 只存储实例执行期间的运行时数据,当流程实例结束时,将删除这些记录。这就保证了这些运行时的表小且快。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词