activity 定义流程

导入 camunda-modeler

idea 2020 之后的版本不再适用 actibpmn 插件,所以引用扩展工具

  1. camunda-modeler 是作为外部工具使用的,故导入方式与actibpmn 不同
    在这里插入图片描述

  2. program选择 Camunda Modeler.exe

  3. arguments 点击 “+” 号选择 filepath
    在这里插入图片描述

  4. 画好的工作流程图,后缀为 .bpmn的文件在idea内打开,修改部分配置文件
    (1)修改命名空间

<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI"
                  xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI"
                  xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                  xmlns:activiti="http://activiti.org/bpmn" xmlns:modeler="http://camunda.org/schema/modeler/1.0" id="Definitions_03io3g1"
                  targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="4.9.0"
                  modeler:executionPlatform="Camunda Platform" modeler:executionPlatformVersion="7.15.0">

(2)修改amunda:assignee 为 activiti:assignee
在这里插入图片描述
5. .bpmn 流程定义文件部署

package com.xx.test;
import org.activiti.engine.ProcessEngine;
import org.activiti.engine.ProcessEngines;
import org.activiti.engine.RepositoryService;
import org.activiti.engine.repository.Deployment;
import org.junit.jupiter.api.Test;



public class ActivitiTest02 {

    /**
     * 部署流程:
     * 1. ACT_RE_DEPLOYMENT 流程部署表,每执行一次部署,会插入一条记录
     * 2. ACT_RE_PROCDEF 生成流程定义信息
     *  其中 ACT_RE_DEPLOYMENT 与 ACT_RE_PROCDEF 表是一对多的关系,
     *  ACT_RE_PROCDEF 每条记录对应一个流程的定义信息(如:  小梦、  小谷请假申请)

     * 3. ACT_GE_BYTEARRAY 流程资源表, */
    @Test
    public void deployByFile() {
        // 1. 实例化流程引擎实例
        ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();

        // 2. 获取流程定义和部署对象相关的Service
        RepositoryService repositoryService = processEngine.getRepositoryService();
        // 3. 创建部署对象进行流程的部署,定义一个流程的名字,把  .bpmn 和  .png 部署到数据库中
        Deployment deployment = repositoryService.createDeployment()
                .name("请假流程")//该处为定义的审批流程的中文名称
                .addClasspathResource("processes/leave.bpmn")//定义流程文件的路径
                .addClasspathResource("processes/leave.png")//定义流程文件的路径
                .deploy();
        // 4. 输出部署信息
        System.out.println("部署ID: " + deployment.getId() );
        System.out.println("部署名称:  " + deployment.getName() );
    }

}
  1. 部署流程结果
    在这里插入图片描述

注意
1、camunda只支持mysql5.6和5.7
2、不修改.bpmn文件开发时我使用的是MySQL8.0,在查询个人任务时数据库中没有任何信息,但是在流程定义和流程部署时都是可以正常使用的。就是查询个人信息时数据库为空,可能是流程部署的时候不兼容的问题,修改文件后,可以正常开发。没有尝试使用低版本的mysql所以就无法告知是否必须修改文件。这里给出的方法是,修改文件进行流程部署,任务查询的方式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值