纯净、安全、绿色的下载网站

首页|软件分类|下载排行|最新软件|IT学院

当前位置:首页IT学院IT技术

Springboot整合camunda Springboot整合camunda+mysql的集成流程分析

大龄码农有梦想   2021-06-24 我要评论
想了解Springboot整合camunda+mysql的集成流程分析的相关内容吗大龄码农有梦想在本文为您仔细讲解Springboot整合camunda的相关知识和一些Code实例欢迎阅读和指正我们先划重点:Springboot整合camunda,Springboot整合camunda,mysql下面大家一起来学习吧

一、创建springboot工程

使用IDEA工具选择File->New->Project选择Spring Initialzr

输入springboot工程基本信息本示例命名为“camunda-demo1”, jdk版本选择8

在选择springboot组件的时候需要选择Spring Web、JDBC API、MySql Driver 这三个组件点击下一步完成即可

二、修改maven配置

2.1、修改springboot版本号

由于camunda版本与springboot版本有匹配关系所以需要修改springboot版本为2.4.3

官方推荐Camunda7.1.5版本使用Spring Boot 2.4.x版本

具体配置参考camunda官方说明文档:https://docs.camunda.org/manual/7.15/user-guide/spring-boot-integration/version-compatibility/

Pom.xm代码片段:

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.4.3</version>
        <relativePath/> 
    </parent>

2.2、引入camunda包

由于本示例要使用camunda流程引擎、web界面、Rest服务接口所以需要导入camunda-bpm-spring-boot-starter、camunda-bpm-spring-boot-starter-rest、camunda-bpm-spring-boot-starter-webapp这三个依赖包如果仅仅是使用流程引擎只需要引入camunda-bpm-spring-boot-starter就可以了

完整的pom.xml文件如下:

<?xml version="1.0" encoding="UTF-8"?>
 
<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
 
    <modelVersion>4.0.0</modelVersion>
 
    <parent>
 
        <groupId>org.springframework.boot</groupId>
 
        <artifactId>spring-boot-starter-parent</artifactId>
 
        <version>2.4.3</version>
 
        <relativePath/> <!-- lookup parent from repository -->
 
    </parent>
 
    <groupId>com.example</groupId>
 
    <artifactId>camunda-demo1</artifactId>
 
    <version>0.0.1-SNAPSHOT</version>
 
    <name>camunda-demo1</name>
 
    <description>Demo project for Spring Boot</description>
 
    <properties>
 
        <java.version>1.8</java.version>
 
    </properties>
 
    <dependencies>
 
        <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>mysql</groupId>
 
            <artifactId>mysql-connector-java</artifactId>
 
            <scope>runtime</scope>
 
        </dependency>
 
        <dependency>
 
            <groupId>org.springframework.boot</groupId>
 
            <artifactId>spring-boot-starter-test</artifactId>
 
            <scope>test</scope>
 
        </dependency>
 
        <dependency>
 
            <groupId>org.camunda.bpm.springboot</groupId>
 
            <artifactId>camunda-bpm-spring-boot-starter</artifactId>
 
            <version>7.15.0</version>
 
        </dependency>
 
        <dependency>
 
            <groupId>org.camunda.bpm.springboot</groupId>
 
            <artifactId>camunda-bpm-spring-boot-starter-rest</artifactId>
 
            <version>7.15.0</version>
 
        </dependency>
 
        <dependency>
 
            <groupId>org.camunda.bpm.springboot</groupId>
 
            <artifactId>camunda-bpm-spring-boot-starter-webapp</artifactId>
 
            <version>7.15.0</version>
 
        </dependency>
 
    </dependencies>
 
    <build>
 
        <plugins>
 
            <plugin>
 
                <groupId>org.springframework.boot</groupId>
 
                <artifactId>spring-boot-maven-plugin</artifactId>
 
            </plugin>
 
        </plugins>
 
    </build>
 
</project>

三、修改application.yaml配置

打开工程目录下的main\resources\application.yaml文件如果没有该文件手动新建一个录入如下信息

# Find more available configuration properties on the following pages of the documentation.
 
# https://docs.camunda.org/manual/latest/user-guide/camunda-bpm-run/#configure-camunda-bpm-run
 
# https://docs.camunda.org/manual/latest/user-guide/spring-boot-integration/configuration/#camunda-engine-properties
 
camunda.bpm:
 
  generic-properties.properties:
 
     javaSerializationFormatEnabled: true
 
  admin-user:
 
    id: demo
 
    password: demo
 
  run:
 
# https://docs.camunda.org/manual/latest/user-guide/camunda-bpm-run/#cross-origin-resource-sharing
 
    cors:
 
      enabled: true
 
      allowed-origins: "*"
 
# datasource configuration is required
 
spring.datasource:
 
  url: jdbc:mysql://127.0.0.1:3306/camunda715?characterEncoding=UTF-8&useUnicode=true&useSSL=false&zeroDateTimeBehavior=convertToNull&serverTimezone=Asia/Shanghai
 
  driver-class-name: com.mysql.cj.jdbc.Driver
 
  username: root
 
  password: root
 
# By default, Spring Boot serves static content from any directories called /static or /public or /resources or
 
# /META-INF/resources in the classpath. To prevent users from accidentally sharing files, this is disabled here by setting static locations to NULL.
 
# https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-spring-mvc-static-content
 
spring.web.resources:
 
  static-locations: NULL

本示例使用的是mysql数据库数据库URL、username、 password 跟后面数据库信息保存一致

四、创建mysql数据库

Camunda默认使用已预先配置好的H2数据库本示例使用mysql数据库需要提前创建mysql数据库并导入Camunda建表脚本

为Camunda平台创建一个数据库模式名称为camunda715

导入SQL脚本执行创建所有必需的表和默认索引的SQL DDL脚本这些脚本可以在configuration/sql/create文件夹中找到共2个脚本都需要导入

导入完成后的表结构共40张表:

详细配置方法参考:https://lowcode.blog.csdn.net/article/details/117564836

五、启动springboot工程

创建springboot工程的时候自动生成了SpringBootApplication启动类运行改类启动即可

package com.example.demo1;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class CamundaDemo1Application {

public static void main(String[] args) {
SpringApplication.run(CamundaDemo1Application.class, args);
}

}

六、登录访问camunda

访问:http://localhost:8080,

默认账号密码demo/demo

登录成功后进入camunda控制台

至此完成了springboot2.4.3+camunda7.15+mysql的集成后续的如何设计流程、如何启动流程、如何审批流程等操作跟非springboot方式是一致的请参考前面的文章

https://lowcode.blog.csdn.net/article/details/117518828

https://lowcode.blog.csdn.net/article/details/118055189


相关文章

猜您喜欢

  • Feign调用服务的坑 Feign调用服务各种坑的处理方案

    想了解Feign调用服务各种坑的处理方案的相关内容吗YeBigBen在本文为您仔细讲解Feign调用服务的坑的相关知识和一些Code实例欢迎阅读和指正我们先划重点:Feign调用服务,Feign服务下面大家一起来学习吧..
  • C++ Boost库实现命令行解析 C++基于Boost库实现命令行解析

    想了解C++基于Boost库实现命令行解析的相关内容吗lyshark在本文为您仔细讲解C++ Boost库实现命令行解析的相关知识和一些Code实例欢迎阅读和指正我们先划重点:C++,Boost库,c++,命令行解析下面大家一起来学习吧..

网友评论

Copyright 2020 www.gamerfx.net 【游戏天空】 版权所有 软件发布

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 点此查看联系方式