《Activiti /Flowable 深入BPM工作流》---如何通過壓縮包方式部署?
一. 問題
前面小編介紹了: 如何通過接口進行對流程定義的部署? 今天小編將介紹一下怎麼通過壓縮包的方式進行部署.
什麼是流程定義的部署?---怎麼通過壓縮包方式部署
二. 詳情
將 holiday .bpmn 和 holiday .png 壓縮成 zip 包。
/**
* 通過 zip方式進行部署流程定義
*/
@Test
public void deployProcessByZip() {
// 1.建立配置文件鏈接
ProcessEngineConfiguration configuration = ProcessEngineConfiguration
.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
// 2.創建引擎
ProcessEngine processEngine = configuration.buildProcessEngine();
// 3.定義zip輸入流
InputStream inputStream = this
.getClass()
.getClassLoader()
.getResourceAsStream("studentHoliday.zip");
ZipInputStream zipInputStream = new ZipInputStream(inputStream);
// 4.獲取repositoryService
RepositoryService repositoryService = processEngine.getRepositoryService();
// 5.流程部署
Deployment deployment = repositoryService.createDeployment()
.addZipInputStream(zipInputStream)
.name("學期請假流程2")
.deploy();
System.out.println("流程部署Id: " + deployment.getId());
System.out.println("流程部署名稱:" + deployment.getName());
}
執行此操作後 activiti會將上邊代碼中指定的bpm 文件和圖片文件保存在 activiti數據庫。