当前位置: 首页 > 图灵资讯 > 技术篇> 【图灵干货】Activiti的流程部署

【图灵干货】Activiti的流程部署

来源:图灵教育
时间:2021-12-23 11:35:06

  前面已经向大家介绍过有关BPMN的认知文章,本片主要向大家介绍activiti的流程部署,这是一个开放源码的项目,独立运营和运营。Activiti项目是一种新的开放源码BPM平台,它基于Apache许可,从基础开始构建。其设计目的是提供支持新的BPMN2.0标准,包括面对新技术机遇的支持OMG(OMG),如互用性和云计算体系结构,提供了技术实现。以下描述了如何在IDEA中部署简单的考勤补签过程:

Java知识共享:Activiti流程部署。

  1.从创建新的resource目录下的bpmn目录开始。

  2.点击bpmn目录的右键-->new-->bpmn文件,在输入bpmn文件名之后将显示以下界面:

  在接口的左侧是属性面板,可以查看和修改个别bpmn元素的属性值,中间是bpmn流程图,最右边是流程图中的各种元素。

  3.绘制流程图。

  1)拖拽StartEvent(开始事件)和EndEvent(结束事件)到流程图,并分别设置名称为“补签开始”和“补签结束”。

  2)拖拽两个UserTask,并分别设置为“技术经理审批”和“人事专员”的名称。

  Java知识共享:Activiti流程部署。

  3)把图连在一起,如上图所示:移动鼠标到图形中心,图标形状将改变,然后拖拉至下一图形完成连接。

  4.制作流程图png图片。

  需要部署Activiti过程的bpmn文件和Flow图片(png格式),bpmn文件可以被复制,然后更改后缀的名称为xml,单击xml文件的右键-->Diagrams-->ShowBPMN2.0Designer将显示以下界面:

  Java知识共享:Activiti流程部署。

  单击左边的导出按钮,并选择resources下的bpmn目录,将作为png图片保存。

  5.过程的部署。

  上一章介绍了Activiti的核心引擎ProcessEngine,所有的服务都可以通过流程引擎得到。

  应用RepositoryService进行部署时,仓库服务是一种存储相关服务,一般用于部署过程文件、获取过程文件、查询流程定义信息等操作,是引擎中的一项重要服务。

  获取方法:

  注册服务服务。

  =engine.getRepositoryService();

  开发流程:

  @Test

  publicvoiddeployAddSigninProcess{

  //获取配置对象。

  过程环境配置配置=。

  过程EngineConfiguration.createProcessEngineConfigurationFromResourceDefault();

  //创建核心引擎。

  ProcessEngineprocessEngine=config.buildProcessEngine();

  //获取仓库服务。

  repositoryService=processEngine.getRepositoryService();

  //部署过程,支持链式编程。

  repositoryService

  createDeployment()//创建一个部署对象。

  .key("addsigninProcess")//设置部署流程关键字。

  .addClasspathResource("bpmn/proc_addsignin.bpmn")//添加bpmn文件。

  .addClasspathResource("bpmn/proc_addsignin.png")//添加png文件。

  .name("补签过程")//设置流程名。

  .deploy();//部署。

  }

  在完成上述代码之后,将将记录插入以下三个表:

  Java知识共享:Activiti流程部署。

  act_re_deployment保存了由过程定义的显示器和部署时间,每次部署增加一个记录。

  Java知识共享:Activiti流程部署。

  act_re_procdef存储了流程定义的属性信息,部署过程定义将向该表添加一条记录。

  Java知识共享:Activiti流程部署。

  act_ge_bytearray存储过程定义了相关的部署信息。这就是过程定义文档的存放地。

  根据这一补签过程,我们基本上可以完成Activiti的流程部署。以下我们只需根据已部署的流程逐级批准来完成整个流程。