标签:inpu 升级 info leave deploy 版本号 pat 最新 dex
一 .概述
在前面,我们画出了基本的流程图,如果我们想要使用这个流程图锁代表的流程,首先我们就需要对这个流程进行部署.
二 .流程部署
ProcessEngines.getDefaultProcessEngine() .getRepositoryService().createDeployment() .name("leave") .addClasspathResource("diagram/leave.bpmn") .addClasspathResource("diagram/leave.png") .deploy();
在上面的代码之中,我们首先获取到了流程部署对象,然后我们就可以尽心个流程的部署了.
在部署的时候,我们制定流程的名字,然后加载两个资源文件,最后调用deploy()方法就完成了流程的部署了.
在部署完之后,我们看一下对activiti中表的改变.
首先会在act_re_deployment这个表中增加一条记录.我们可以看到流程部署的名字和时间.
另外一个就是流程部署的文件信息,全部都会存储在act_ge_bytearray表之中.
我们可以看到对应的两个文件的信息.
然后,activiti会对我们的流程部署生成一个流程定义记录.
在这里我们能看到我们的流程的key,最重要的是我们可以看到一个版本号.
当我们再此部署的时候,只要名称是一致的,就会升级版本号.
三 . 使用zip部署流程
在我们的web环境下,我们可以使用文件上传的方式进行流程的部署.
@Test public void test2() throws FileNotFoundException{ // 现在我们使用zip的方式,将流程图和流程定义文件一起打包为zip文件 ZipInputStream zipInputStream = new ZipInputStream(new FileInputStream("C:\\Users\\trek\\Desktop\\leave.zip")); ProcessEngines.getDefaultProcessEngine() .getRepositoryService() .createDeployment() .name("leave") .addZipInputStream(zipInputStream) .deploy(); }
我们将bomn文件和png文件打包称为一个zip文件,然后使用上面的方式就可以重新部署一个新的流程.
在运行了上述的文件之后,我们看一下我们上面提到的版本号.
我们看到,流程的版本号升级了.以后,我们直接使用流程的key启动的都是最新的流程.
标签:inpu 升级 info leave deploy 版本号 pat 最新 dex
原文地址:https://www.cnblogs.com/trekxu/p/9601032.html