【入门篇】Activiti流程部署两种方法

来源:互联网 发布:软件行业前景预测 编辑:程序博客网 时间:2024/05/18 04:07

需求

  将绘制好的工作流程图,进行部署定义,这里有两种方法

首先创建processEngine

//创建processEngineprivate ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();

方法一:

单个文件部署流程,直接操作绘制好的bpmn和png文件资源,代码如下:

public void deployment(){//使用RespositoryServiceRepositoryService repositoryService = processEngine.getRepositoryService();//部署bpmn文件和png文件//bpmn文件名String resourceName_bpmn = "purchasingflow01.bpmn";InputStream inputStream_bpmn = this.getClass().getClassLoader().getResourceAsStream("diagram/purchasingflow01.bpmn");//bpmn文件名String resourceName_png = "purchasingflow01.png";InputStream inputStream_png = this.getClass().getClassLoader().getResourceAsStream("diagram/purchasingflow01.png");//部署对象Deployment deployment = repositoryService.createDeployment().addInputStream(resourceName_bpmn, inputStream_bpmn)//部署bpmn.addInputStream(resourceName_png, inputStream_png)//部署png.deploy();//部署idSystem.out.println("部署id:"+deployment.getId());System.out.println("部署时间:" + deployment.getDeploymentTime());}

方法二:

压缩包部署方法,将绘制好的bpmn和png资源压缩为zip,后期部署的时候,直接读取zip文件完成流程部署,代码如下:

public void deployProcessByZip(){//定义zip输入流InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("cn/itcast/activiti/first/purchasingflow.zip");ZipInputStream zipInputStream = new ZipInputStream(inputStream);//获取repositoryServiceRepositoryService repositoryService = processEngine.getRepositoryService();//流程部署Deployment deployment = repositoryService.createDeployment().addZipInputStream(zipInputStream).deploy();System.out.println("流程部署id:" + deployment.getId());System.out.println("流程部署名称:" + deployment.getName());}

本人工程文件资源和java类目录结构如下:


原创粉丝点击