SpringBoot整合Flowable

1. 引入依赖

flowable-spring-boot-starter-basic

<dependency>    <groupId>org.flowable</groupId>    <artifactId>flowable-spring-boot-starter-basic</artifactId>    <version>${flowable.version}</version></dependency>

完整pom

<parent>    <groupId>org.springframework.boot</groupId>    <artifactId>spring-boot-starter-parent</artifactId>    <version>2.1.16.RELEASE</version>    <relativePath/> <!-- lookup parent from repository --></parent><properties>    <java.version>1.8</java.version>    <flowable.version>6.4.2</flowable.version>    <slf4j.version>1.7.25</slf4j.version></properties><dependencies>    <dependency>        <groupId>org.springframework.boot</groupId>        <artifactId>spring-boot-starter-web</artifactId>    </dependency>    <dependency>        <groupId>org.mybatis.spring.boot</groupId>        <artifactId>mybatis-spring-boot-starter</artifactId>        <version>2.1.4</version>    </dependency>    <dependency>        <groupId>org.springframework.boot</groupId>        <artifactId>spring-boot-devtools</artifactId>        <scope>runtime</scope>        <optional>true</optional>    </dependency>    <dependency>        <groupId>mysql</groupId>        <artifactId>mysql-connector-java</artifactId>        <scope>runtime</scope>    </dependency>    <dependency>        <groupId>org.projectlombok</groupId>        <artifactId>lombok</artifactId>        <optional>true</optional>    </dependency>    <dependency>        <groupId>org.flowable</groupId>        <artifactId>flowable-spring-boot-starter-basic</artifactId>        <version>${flowable.version}</version>    </dependency>    <dependency>        <groupId>com.alibaba</groupId>        <artifactId>druid-spring-boot-starter</artifactId>        <version>1.1.10</version>    </dependency>    <dependency>        <groupId>org.springframework.boot</groupId>        <artifactId>spring-boot-starter-test</artifactId>        <scope>test</scope>        <exclusions>            <exclusion>                <groupId>org.junit.vintage</groupId>                <artifactId>junit-vintage-engine</artifactId>            </exclusion>        </exclusions>    </dependency>    <dependency>        <groupId>org.slf4j</groupId>        <artifactId>slf4j-api</artifactId>        <version>${slf4j.version}</version>    </dependency>    <!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-log4j12 -->    <dependency>        <groupId>org.slf4j</groupId>        <artifactId>slf4j-log4j12</artifactId>        <version>${slf4j.version}</version>    </dependency></dependencies>

2. 配置文件

application.properties 主要配置数据源

server.port=10000server.servlet.context-path=/spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driverspring.datasource.url=jdbc:mysql://127.0.0.1:3306/flowable-springboot?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai&nullCatalogMeansCurrent=true&useSSL=falsespring.datasource.username=rootspring.datasource.password=123456# druid configspring.datasource.druid.initial-size=5spring.datasource.druid.min-idle=5spring.datasource.druid.max-active=20spring.datasource.druid.max-wait=60000spring.datasource.druid.time-between-eviction-runs-millis=60000spring.datasource.druid.min-evictable-idle-time-millis=300000spring.datasource.druid.validation-query=SELECT 1 FROM DUALspring.datasource.druid.test-while-idle=truespring.datasource.druid.test-on-return=falsespring.datasource.druid.test-on-borrow=falsespring.datasource.druid.pool-prepared-statements=truespring.datasource.druid.max-pool-prepared-statement-per-connection-size=20spring.datasource.druid.filters=stat,wall,log4jspring.datasource.druid.connection-properties=druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500

3. 启动查看数据库

启动时,默认会获取 classpath*:/processes/下的所有.bpmn20.xml, .bpmn文件,并完成部署。

查看数据库,表已经自动创建。

4. 设置流程文件位置

设置流程文件位置并在启动时完成部署;

查看 org.flowable.spring.boot.FlowableProperties 完成配置

# 是否开启自动部署流程定义 默认trueflowable.check-process-definitions=true# 流程定义文件位置flowable.process-definition-location-prefix=classpath*:/bpmn/# 流程文件后缀flowable.process-definition-location-suffixes[0]=**.bpmn20.xmlflowable.process-definition-location-suffixes[1]=**.bpmn

5. 自定义ID生成器

public class CustomIdGenerator implements IdGenerator {    @Override    public String getNextId() {        String uuid = UUID.randomUUID().toString();        String nextId = "custom:"   uuid.replaceAll("-", "");        return nextId;    }}
@Beanpublic IdGenerator idGenerator() {    return new CustomIdGenerator();}

6. Flowable配置类

org.flowable.spring.boot.FlowableProperties
org.flowable.spring.boot.process.FlowableProcessProperties
org.flowable.spring.boot.app.FlowableAppProperties
org.flowable.spring.boot.idm.FlowableIdmProperties
org.flowable.spring.boot.FlowableMailProperties
org.flowable.spring.boot.FlowableHttpProperties

来源:https://www.icode9.com/content-4-811051.html

(0)

相关推荐

  • 给小白演示 分库分表案例

    大家好,我是老田,受群里小伙伴之邀,搞一个分库分表案例,这样让很多没用过分库分表的心里也有个底,不然永远看到的都是网上的各种概念和解决方案性的文章. 说明:由于是给小白看的,所以大神勿喷,建议出门左转 ...

  • 小白都能看懂的 Spring Boot 入门指南!

    纯洁的微笑 今天 以下文章来源于Java技术指北 ,作者指北君 什么是Spring Boot Spring Boot 是 Spring 开源组织下的一个子项目,也是 Spring 组件一站式解决方案, ...

  • springboot 整合 flowable 流程引擎

    springboot 整合 flowable 流程引擎

  • jackson学习之九:springboot整合(配置文件)

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 系列文章汇总 jackson学习之一:基本信息 jac ...

  • 手把手教你SpringBoot整合MybatisPlus 代码生成器

    一.在pom.xml中添加所需依赖 <!-- MyBatis-Plus代码生成器--><dependency> <groupId>com.baomidou</ ...

  • quartz与springboot整合无法暂停job问题

    很多项目中都会用到定时任务的场景.起初项目中只是简单的使用了spring提供的@Scheduled注解.随着定时任务越来越多,我们需要对定时任务进行可视化管理,于是就单独建立了一个工程,用quartz ...

  • SpringBoot整合RabbitMQ 手动应答 简单demo

    版本说明 JDK 1.8 RabbitMQ 3.7.15 Erlang 22.0 SpringBoot 2.3.3.RELEASE // Update 2021年1月19日16:50:16 CentO ...

  • SpringBoot整合Shiro权限框架实战

    什么是ACL和RBAC ACL Access Control list:访问控制列表 优点:简单易用,开发便捷 缺点:用户和权限直接挂钩,导致在授予时的复杂性,比较分散,不便于管理 例子:常见的文件系 ...

  • SpringBoot整合阿里短信服务

    导读 由于最近手头上需要做个Message Gateway,涉及到:邮件(点我直达).短信.公众号(点我直达)等推送功能,网上学习下,整理下来以备以后使用. 步骤 点我直达 登录短信服务控制台 点我直 ...

  • Springboot整合百度开源分布式ID生成器UIDGenerator

    环境:sprinboot2.3.12.RELEASE uid-generator1.0.0 简介 UidGenerator是Java实现的, 基于Snowflake算法的唯一ID生成器.UidGene ...

  • SpringBoot整合Durid

    上一篇我们整合了MySQL和JDBCTemplate,并在结尾完成了双数据源的配置和插入动作.当我们将数据插入成功后,查看控制台就会发现,我们已经使用了默认的数据库连接池HikariDataSourc ...