流程引擎(flowable)之流程相关

代码示例:流程部署/发布

InputStream inputStream = new DefaultResourceLoader().getResource("classpath:BusinessProcessBeanTest.test.bpmn20.xml").getInputStream();
            Deployment deploy = configuration.getRepositoryService()
                    .createDeployment()
                    //必须要.bpmn或者结尾
                    .addInputStream("资源名称.bpmn", inputStream)
                    .name("流程部署测试")
                    .key("这是Key")
                    .category("这是什么?")
                    .tenantId("租户ID")
                    .parentDeploymentId("1")
                    .deploy();

注意事项:configuration.getRepositoryService()可以获取到RepositoryService对象,在flowable中RepositoryService对象主要用于处理流程相关的一些操作,比如:【流程部署】、【流程删除】、【流程挂起】等操作。上面代码中有个地方需要注意,在调用addInputStream方法时需要传两个参数:资源名称、具体资源,资源名称需要.bpmn结尾,若不是以.bpmn结尾在发布的过程中ACT_RE_PROCDEF(业务流程定义数据表)不会执行同步流程定义的相关数据逻辑,原因是在部署肤哦吃中流程引擎会对文件名称做校验,源码如图。

在这里插入图片描述

在这里插入图片描述

代码示例:启动一个流程实例

configuration.getRuntimeService()
                    .createProcessInstanceBuilder()
  									//业务key,一般作为流程引擎和业务绑定的一个标识
                    .businessKey("业务号")
  									//流程定义的key,对应bpmn文件中process标签的id属性
                    .processDefinitionKey("businessProcessBeanTest")
  									//实例名称
                    .name("用户审批")
  									//租户ID,用于多租户场景
                    .tenantId("租户ID")
                    .start();

注意事项:1.processDefinitionKey(“businessProcessBeanTest”)中的参数应当是bpmn文件中process标签的id属性
2.tenantId(“租户ID”)中的参数应当是一个业务流程定义数据表存在的租户ID。具体源码如图。

在这里插入图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值