0
点赞
收藏
分享

微信扫一扫

【Camunda 二】Springboot集成Camunda工程(使用H2,Mysql, Postgresql数据库)

静悠 2022-09-24 阅读 208

参考:【Camunda 一】Springboot集成Camunda使用Mysql_LoneWalker、的博客-CSDN博客_camunda springboot

一、匹配版本简介

基于Camunda 7.17.0 + Springboot 2.6.4

首先官网camunda7.17对应的springboot版本。camunda官网

使用camunda流程引擎、web界面、Rest服务接口相应依赖如下:

<dependency>
    <groupId>org.camunda.bpm.springboot</groupId>
    <artifactId>camunda-bpm-spring-boot-starter</artifactId>
    <version>7.17.0</version>
</dependency>
<dependency>
    <groupId>org.camunda.bpm.springboot</groupId>
    <artifactId>camunda-bpm-spring-boot-starter-rest</artifactId>
    <version>7.17.0</version>
</dependency>
<dependency>
    <groupId>org.camunda.bpm.springboot</groupId>
    <artifactId>camunda-bpm-spring-boot-starter-webapp</artifactId>
    <version>7.17.0</version>
</dependency>

 相关属性配置可参考Springboot集成配置

二、构建SpringBoot工程

Camunda官网提供了构建SpringBoot基础工程构建界面Camunda Platform Initializr,在该界面配置相应的配置参数,如下图所示:

导出后,即为基础的springboot工程,默认为H2数据库配置。

三、配置MySql,Postgresql数据库

3.1 配置Mysql,Postgresql数据库时,需要首先新建相应的数据库,如下图所示:

3.2 SpringBoot pom.xml文件配置

pom文件(见3.2.4)中配置了H2, Mysql, Postgresql相应的配置,使用哪种数据库,只需要打开相应的注释即可。

3.2.1 H2 pom文件配置:

3.2.2 Mysql pom文件配置:

3.2.3 Postgresql pom文件配置 

 3.2.4 SpringBoot Pom文件

<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

  <modelVersion>4.0.0</modelVersion>

  <groupId>com.houpe.camunda</groupId>
  <artifactId>spring-boot-camunda-demo2</artifactId>
  <version>1.0.0-SNAPSHOT</version>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>8</maven.compiler.source>
    <maven.compiler.target>8</maven.compiler.target>
  </properties>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-dependencies</artifactId>
        <version>2.6.4</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>

      <dependency>
        <groupId>org.camunda.bpm</groupId>
        <artifactId>camunda-bom</artifactId>
        <version>7.17.0</version>
        <scope>import</scope>
        <type>pom</type>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <dependencies>
    <!--
      流程引擎:camunda-bpm-spring-boot-starter
      Rest服务接口:camunda-bpm-spring-boot-starter-rest
      web界面模块:camunda-bpm-spring-boot-starter-webapp
    -->
    <dependency>
      <groupId>org.camunda.bpm.springboot</groupId>
      <artifactId>camunda-bpm-spring-boot-starter-rest</artifactId>
    </dependency>

    <dependency>
      <groupId>org.camunda.bpm.springboot</groupId>
      <artifactId>camunda-bpm-spring-boot-starter-webapp</artifactId>
    </dependency>

    <dependency>
      <groupId>org.camunda.bpm</groupId>
      <artifactId>camunda-engine-plugin-spin</artifactId>
    </dependency>

    <dependency>
      <groupId>org.camunda.spin</groupId>
      <artifactId>camunda-spin-dataformat-all</artifactId>
    </dependency>

    <!--h2-->
    <!--<dependency>-->
    <!--  <groupId>com.h2database</groupId>-->
    <!--  <artifactId>h2</artifactId>-->
    <!--</dependency>-->
    <!--<dependency>-->
    <!--  <groupId>org.springframework.boot</groupId>-->
    <!--  <artifactId>spring-boot-starter-jdbc</artifactId>-->
    <!--</dependency>-->

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

    <!--postgresql-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-jdbc</artifactId>
    </dependency>
    <dependency>
      <groupId>org.postgresql</groupId>
      <artifactId>postgresql</artifactId>
    </dependency>
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>druid-spring-boot-starter</artifactId>
      <version>1.1.21</version>
    </dependency>

    <dependency>
      <groupId>com.alibaba.fastjson2</groupId>
      <artifactId>fastjson2</artifactId>
      <version>2.0.12</version>
    </dependency>
  </dependencies>

  <build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <version>2.6.4</version>
      </plugin>
    </plugins>
  </build>
</project>

3.3 application.yaml文件 

application.yaml文件中分别配置了H2, Mysql, Postgresql数据库配置,使用哪种数据库,只需要打开相应的注释即可。

#spring.datasource.url: jdbc:h2:file:./camunda-h2-database
camunda.bpm.admin-user:
  id: demo
  password: 123

server:
  port: 8100

spring:
  application:
    name: spring-boot-camunda-demo2
  datasource:
    # h2
#    url: jdbc:h2:file:./camunda-h2-database

    # mysql
#    url: jdbc:mysql://39.103.217.57:3306/camunda2?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&useOldAliasMetadataBehavior=true
#    driver-class-name: com.mysql.jdbc.Driver
#    username: root
#    password: root123

    # postgresql
    url: jdbc:postgresql://39.103.217.57:15432/camunda3?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false&useSSL=false
    username: postgres
    password: 123abc
    type: com.alibaba.druid.pool.DruidDataSource
    initialization-mode: always

四、启动项目

直接启动项目后,就可以看到数据库已经生成了49张表:

 数据库表介绍:

本文只集成了流程引擎。

举报

相关推荐

0 条评论