• springboot+camunda实现工作流1


    1.在camunda modeler工具里面写流程,任务执行指明Java类

     2.保存文件放在resources目录下,并建立一个processes.xml的空文件

     3.依赖配置

        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
    
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
            </dependency>
            <!-- camunda依赖 -->
            <dependency>
                <groupId>org.camunda.bpm.springboot</groupId>
                <artifactId>camunda-bpm-spring-boot-starter-webapp</artifactId>
                <version>3.4.1</version>
            </dependency>
    
            <dependency>
                <groupId>com.h2database</groupId>
                <artifactId>h2</artifactId>
            </dependency>
            <dependency>
                <groupId>org.mybatis.spring.boot</groupId>
                <artifactId>mybatis-spring-boot-starter</artifactId>
                <version>1.3.2</version>
            </dependency>
    
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <scope>runtime</scope>
            </dependency>
        </dependencies>

    4.yml配置:建立一个空数据库既可以,运行后会自动建表

    spring:
      datasource:
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://127.0.0.1:3306/camunda
        username: root
        password: root
    camunda:
      bpm:
        admin-user:
          id: admin
          password: admin
          first-name: admin
        filter:
          create: All tasks
        #指定数据库类型
          database:
              type: mysql
        #自动部署resources下面的bpmn文件
        auto-deployment-enabled: true
        #禁止index跳转到Camunda自带的管理界面,默认true
    #    webapp:
    #      index-redirect-enabled: false

    5.编写任务中的Java执行类

    package com.example.camunda.email;
    
    import org.camunda.bpm.engine.delegate.DelegateExecution;
    import org.camunda.bpm.engine.delegate.JavaDelegate;
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    
    /**
     * @program: camunda
     * @description: 发送邮件
     * @author: Mr.HuangDaDa
     * @create: 2021-12-28 17:08
     **/
    public class SendEmail implements JavaDelegate {
        private final Logger logger = LoggerFactory.getLogger(SendEmail.class);
        @Override
        public void execute(DelegateExecution execution) throws Exception {
            logger.info("发邮件成功!!!");
        }
    }

    6.登录执行,点击tasklist,

     

     

     7.结果:已经成功执行任务

  • 相关阅读:
    .net core 3.1 新增过滤器(Filter)和拦截器(LogInterceptor)
    .net core 3.1 新增log4net 和 NLog
    .net core 3.1 jwt token授权
    IdentityServer4 之 Resource Owner Password Credentials 其实有点尴尬
    IdentityServer4 之Client Credentials走起来
    Hive 窗口函数sum() over()求当前行和前面n条数据的和
    机器学习-线性规划(LP)
    机器学习-KNN算法
    flume整合kafka
    学习kafka自己发生的几个小错误记录
  • 原文地址:https://www.cnblogs.com/hyy9527/p/15743896.html
Copyright © 2020-2023  润新知