springboot 集成 camunda

项目地址: stormlong/springboot-camundaicon-default.png?t=O83Ahttps://gitee.com/stormlong/springboot-camunda

官网集成引导

  1. 进入官网 https://camunda.com/

  2. 选择 camunda7

image-20240930112807767

滑倒页面底部

image-20240930113004333

  1. 进入 getStart 页面 https://start.camunda.com/

image-20240930150431829

点击 GENERATE 下载导入 idea 即可

流程设计工具下载

  1. 进入首页 https://camunda.com/

  2. 选择 processDesign

image-20240930151103418

  1. 选择客户端下载

image-20240930151752734

  1. 选择代码选择的版本

image-20240930152158560

API 文档

image-20240930153631424

https://docs.camunda.org/manual/latest/

选择自己下载的版本

https://docs.camunda.org/manual/7.19/

image-20240930153818557

项目初始数据库配置

下载后的项目默认 H2 做完数据库,可修改为 mysql 数据替换

spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/springboot_camunda?nullDatabaseMeansCurrent=true&sendFractionalSeconds=false&useUnicode=true&characterEncoding=utf8
    username: root
    password: xxxxxxx

camunda:
  bpm:
    admin-user:
      id: admin
      password: 123456
    database:
      schema-update: true

要点:

  1. url 后面添加 nullDatabaseMeansCurrent=true

    原因:camunda会先检测表是否存在。如果不加nullDatabaseMeansCurrent=true,camunda默认查找的是服务器该port的所有数据库,如果其他库存在camunda的表,那么camunda就不会创建新表了,最后导致使用的时候camunda这个库里面没有表。

  2. url 后面添加 sendFractionalSeconds=false

    image-20240930154149820

流程图项目使用

camunda Modeler 设计完流程图后,保存会生成 .bpmn 文件存储本地

在 springboot 项目 resources 目录下新建 bpmn 文件夹,复制上一步的 .bpmn 到文件夹下

启动项目访问 127.0.0.1:8080 即可出现登录界面

image-20240930154335382

帐号密码为项目 yaml 文件中设置的,输入即可登录

image-20240930154542646

选择 cockpit 即可看到导入的流程图

image-20240930154640758

### Spring Boot 整合 Camunda 实现工作流管理 #### 添加依赖项 为了在Spring Boot项目中整合Camunda,需先引入必要的Maven或Gradle依赖。对于Maven项目,在`pom.xml`文件内加入如下片段: ```xml <dependency> <groupId>org.camunda.bpm.spring.boot</groupId> <artifactId>camunda-bpm-spring-boot-starter</artifactId> <version>${camunda.version}</version> </dependency> ``` 确保`${camunda.version}`被替换为兼容版本号[^4]。 #### 配置数据源 接着配置数据库连接参数以便存储BPMN模型实例和其他持久化对象。通常情况下,这些设置位于application.properties或application.yml文件里: ```properties spring.datasource.url=jdbc:h2:mem:camunda;DB_CLOSE_DELAY=-1;MODE=MYSQL spring.datasource.username=sa spring.datasource.password= spring.datasource.driver-class-name=org.h2.Driver ``` 上述示例采用内存型H2数据库作为默认选项;实际部署时应考虑更稳定的关系型数据库解决方案[^3]。 #### 启动类注解 为了让应用程序自动发现并加载Camunda相关组件和服务,需要为主启动类添加特定的注解: ```java @SpringBootApplication @EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class}) public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } } ``` 这里排除了默认的数据源自动配置以防止冲突,并允许自定义配置生效[^1]。 #### 创建业务流程 使用Camunda Modeler工具设计好所需的BPMN图表之后,将其放置于resources目录下的processes路径下。当应用运行起来以后,Camunda会扫描此位置并将所有合法的XML描述符注册到引擎之中[^2]。 #### 测试与验证 最后一步就是编写单元测试来检验整个链条是否正常运作。可以通过访问内置的任务列表(Tasklist)页面手动触发某些操作,比如发起请假请求以及完成相应的审核环节等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值