美文网首页
Activiti 课程总结

Activiti 课程总结

作者: 阿杰_96c5 | 来源:发表于2020-03-10 21:27 被阅读0次

    什么是工作流?

    ​ 就是通过计算机对业务流程进行自动化管理,实现多个参与者按照预定义的流程去自动执行业务流程。

    什么 activiti?

    ​ Activiti 是一个工作流的引擎,开源的架构,基本 bpmn2.0 标准进行流程定义,它的是前身是 jbpm。Activiti 通过是要嵌入到业务系统开发使用。

    如何使用 activiti 开发?

     第一步:部署 activiti 的环境。

    ​ 环境包括:jar 包和数据库(25 张表)
    业务系统通过 spring 和 activiti 整合进行开发。

     第二步:使用 activiti 提供流程设计器(和 idea 或 eclipse 集成的 designer)工具进行流程定义

    ​ 流程定义生成两个文件:.bpmn 和.png(不是必须的)。

     第三步;将流程定义文件部署到 activiti 的数据库

    ​ SELECT * FROM act_re_deployment #流程定义部署表
    一次部署插入一条记录,记录流程定义的部署信息

    ​ SELECT * FROM act_re_procdef #流程定义表
    一次部署流程定义信息,如果一次部署两个流程定义,插入两条记录

    ** 建议**:一次部署只部署一个流程定义,这样 act_re_deployment 和 act_re_procdef 一对一关系

    ​ 常用两个方法:单个文件部署和 zip 文件部署。
    建议单个文件部署。

     第四步: 启动一个流程实例

    ​ 业务系统就可以按照流程定义去执行业务流程,执行前需要启动一个流程实例
    根据流程定义来启动一个流程实例。
    指定一个流程定义的 key 启动一个流程实例,activiti 根据 key 找最新版本的流程定义。
    指定一个流程定义的 id 启动一个流程实例。

    ​ 启动一个实例需要指定 businesskey(业务标识),businessKey 是 activiti 和业务系统整合时桥梁。
    比如:请假流程,businessKey 就是请假单 id。
    启动一个实例还可以指定流程变量,流程变量是全局变量(生命期是整个流程实例,流程实例结束,
    变量就消失)

    第五步:查询待办任务

    ​ 查询个人任务:使用 taskService,根据 assignee 查询该用户当前的待办任务。
    查询组任务:使用 taskService,根据 candidateuser 查询候选用户当前的待办组任务。

     第六步:办理任务

    ​ 办理个人任务:调用 taskService 的 complete 方法完成任务。
    如果是组任务,需要先拾取任务,调用 taskService 的 claim 方法拾取任务,拾取任务之后组任务就
    变成了个人任务(该任务就有负责人)。

    网关:

    排他网关:任务执行之后的分支,经过排他网关分支只有一条有效。
    并行网关:任务执行后,可以多条分支,多条分支总会汇聚,汇聚完成,并行网关结束。
    包含网关:是排他网关和并行网关结合体。

    相关文章

      网友评论

          本文标题:Activiti 课程总结

          本文链接:https://www.haomeiwen.com/subject/aucndhtx.html