首页 > 其他分享 >SpringBoot整合Activiti7工作流引擎

SpringBoot整合Activiti7工作流引擎

时间:2023-02-06 10:23:00浏览次数:46  
标签:SpringBoot activiti 部署 流程 启动 保存 引擎 Activiti7 true

在Idea中安装bpnm可视化插件

引入activiti依赖

<!-- 引入Activiti7 -->
<dependency>
    <groupId>org.activiti</groupId>
    <artifactId>activiti-spring-boot-starter</artifactId>
    <version>7.0.0.Beta3</version>
</dependency>

配置文件

spring:
  datasource:
    druid:
      driver-class-name: com.mysql.cj.jdbc.Driver
      url: jdbc:mysql://localhost:3306/mybatisplus
      username: root
      password: 123456
#      初始化大小
      initial-size: 5
#      最小连接数
      min-idle: 5
#      最大连接数
      max-active: 20
#      获取连接等待超时的时间
      max-wait: 5000
#      打开PSCache,并且指定每个连接上PSCache的大小
      pool-prepared-statements: true
#      asyncInit是1.1.4中新增加的配置,如果有initialSize数量较多时,打开会加快应用启动时间
      async-init: true
#      配置监控统计拦截的filters
      filters: stat,config
#      druid监控配置信息
      maxPoolPreparedStatementPerConnectionSize: 20
      useGlobalDataSourceStat: true
    type: com.alibaba.druid.pool.DruidDataSource

  devtools:
    restart:
      enabled: true #设置开启热部署
      additional-paths: src/main/java #重启目录

  #activiti配置
  activiti:
    #1.flase:默认值。activiti在启动时,对比数据库表中保存的版本,如果没有表或者版本不匹配,将抛出异常
    #2.true: activiti会对数据库中所有表进行更新操作。如果表不存在,则自动创建
    #3.create_drop: 在activiti启动时创建表,在关闭时删除表(必须手动关闭引擎,才能删除表)
    #4.drop-create: 在activiti启动时删除原来的旧表,然后在创建新表(不需要手动关闭引擎)
    database-schema-update: true
    # 自动部署验证设置:true-开启(默认)、false-关闭 true时项目启动会自动部署
    check-process-definitions: false
    #  注意,如果activiti后面加上了/,就要求启动的时候process文件夹中需要有流程定义文件
    #  是指定activiti流程描述文件的前缀(路径),启动时,activiti就会去寻找此路径下的流程描述文件,并且自动部署
    process-definition-location-prefix: classpath:/processes/
    #  suffix 是一个String数组,表示描述文件的默认后缀名,默认**.bpmn和**.bpmn20.xml
    #    process-definition-location-suffixes:
    #      - **.bpmn
    #      - **.bpmn20.xml
    #  Activiti7历史数据无法自动插入,开启下面两个配置
    # 检测历史表是否存在  activiti7默认没有开启数据库历史记录 启动数据库历史记录
    db-history-used: true
    # 保存历史数据
    #记录历史等级 可配置的历史级别有none, activity, audit, full
    #none:不保存任何的历史数据,因此,在流程执行过程中,这是最高效的。
    #activity:级别高于none,保存流程实例与流程行为,其他数据不保存。
    #audit:除activity级别会保存的数据外,还会保存全部的流程任务及其属性。audit为history的默认值。
    #full:保存历史数据的最高级别,除了会保存audit级别的数据外,还会保存其他全部流程相关的细节数据,包括一些流程参数等。
    history-level: audit
    # 关闭自动部署
    deployment-mode: never-fail
    # 解决频繁查询SQL问题
    async-executor-activate: false

启动项目

项目启动后会自动初始化activiti相关表
activiti会创建一共有25张表

activiti数据表介绍

绘制流程图

  1. 新建*.bpmn20.xml 文件:New -> New Activity 6.x BPMN 2.x file
  2. 在文件上右键选择view BPMN(Activity ) Diagram
  3. 绘制流程图

流程部署

自动部署

check-process-definitions: true配置为true时则为自动部署

手动部署

标签:SpringBoot,activiti,部署,流程,启动,保存,引擎,Activiti7,true
From: https://www.cnblogs.com/ccx-lly/p/17094482.html

相关文章

  • springboot配置多个数据源
    spring:datasource:db1:driver-class-name:com.mysql.cj.jdbc.Driverjdbc-url:jdbc:mysql://127.0.0.1:3306/db1username:rootpa......
  • SpringBoot实现大文件上传/下载(分片、断点续传)
    1.SpringBoot实现大文件上传/下载(分片、断点续传)1.分片:按照自定义缓冲区大小,将大文件分成多个小文件片段。2.断点续传:根据分片数量,给每个小文件通过循环起对应名称,......
  • 《SQL基础》10. 存储引擎
    目录存储引擎MySQL体系结构存储引擎简介三种经典存储引擎InnoDB逻辑存储结构MyISAMMemory区别及特点存储引擎选择存储引擎MySQL体系结构连接层最上层是一些客户端......
  • ElasticSearch分布式搜索引擎——从入门到精通
    ES分布式搜索引擎注意:在没有创建库的时候搜索,ES会创建一个库并自动创建该字段并且设置为String类型也就是text什么是elasticsearch?一个开源的分布式搜索引擎,可以用......
  • php操作ElasticSearch搜索引擎流程详解
    目录一、安装二、使用三、新建ES数据库四、创建表五、插入数据六、查询所有数据七、查询单条数据八、搜索九、测试代码〝古人学问遗无力,少壮功夫老始成〞......
  • SpringBoot访问windows共享文件
    前言最近有项目需要开发档案打包下载功能,其中包含很多大附件,项目使用minio存储且不在同一台服务器上,为了优化速度决定使用windows共享功能进行文件传输SMB1.0集成jcifs类......
  • SpringBoot访问windows共享文件
    前言最近有项目需要开发档案打包下载功能,其中包含很多大附件,项目使用minio存储且不在同一台服务器上,为了优化速度决定使用windows共享功能进行文件传输SMB1.0集成jcifs......
  • 巨量引擎账户的搭建流程1
    巨量引擎广告投放平台,又称AD平台,它是字节跳动旗下的营销服务品牌,整合了今日头条、抖音短视频、火山小视频、西瓜视频、穿山甲等产品的营销能力,帮助广告主自助投放广告,高效......
  • 巨量引擎账户的搭建流程
    一:巨量搜索广告营销漏斗1:用户主动搜索请求2:广告相关性:系统判断搜索词,购买关键词和创意3:系统计算ecpm(千次展现可以获得的收入),ECPM=出价*CTR*CVR*10004:广告......
  • SpringBoot测试用例的一些小技巧~
    场景一:不想因为测试而对数据库产生脏数据@TestpublicvoidtestInsert(){ Useruser=newUser(); user.setUsername("startqbb"); user.setPassword("123456"); u......