Flowable中的Service

前言

在学习博客[(https://blog.csdn.net/puhaiyang/article/details/79845248)]时,注意到Flowable中的各种Service(如下),进而在官网中学习相关知识[https://flowable.com/open-source/docs/bpmn/ch04-API/#the-process-engine-api-and-services]

ProcessInstance pi = runtimeService
        .createProcessInstanceQuery()
        .processInstanceId(processId)
        .singleResult();

Task task = taskService
        .createTaskQuery()
        .processInstanceId(pi.getId())
        .singleResult();

//使用流程实例ID,查询正在执行的执行对象表,返回流程实例对象
String instanceId = task.getProcessInstanceId();
List<Execution> executions = runtimeService
        .createExecutionQuery()
        .processInstanceId(instanceId)
        .list();

flowable中的service

  • ProcessEngineConfiguration类通过读取xml文件配置流程引擎。
  • 从ProcessEngine类中可以得到各种服务,值得注意的是,这些服务可以被认为是单例模式。
  • RepositoryService是使用Flowable引擎时需要的第一个服务,它提供用于管理和操作部署和流程定义(BPMN )的操作,主要负责一些静态的配置。
  • RuntimeService主要负责一些动态的任务,如启动一个新的实例,通常一个流程可以对应多个实例。它也用于检索和储存一些流程变量,比如在单向网关组件中需要传递之前的选择。
  • TaskService主要和分配给人的任务相关,比如将任务分配给用户。
  • IdentityService主要负责用户的管理。
  • FormService是一个可选的服务,主要负责开始表单和结束表单。
  • HistoryService保存历史信息。
  • DynamicBpmnService可以动态的添加新的流程。

总结

自己对照博客修改后的项目地址[https://gitee.com/magic_girl/flowable2]

posted @ 2021-04-25 17:13  爱吃西红柿96  阅读(1320)  评论(0编辑  收藏  举报