Activiti (七)查詢流程定義信息

當我們需要查詢一個流程定義的信息時,怎麼去查詢呢


查詢流程定義信息


步驟:

  1. 獲取processEngine對象
  2. 創建RepositoryService對象
  3. 得到ProcessDefinitionQuery對象
  4. 設置條件,並查詢當前的所有流程定義 

代碼實現,兩種(只查詢一個和查詢多個

只查詢一個:

public class QueryProcessDefinition {
    public static void main(String[] args) {
         //1:定義ProcessEngine對象,自己封裝的工具類也可以 
                    ProcessEngines.getDefaultProcessEngine();
        ProcessEngine processEngine= ReturnProcessEngineUtil.getProcessEngine();

        //2:創建RepositoryService對象
        RepositoryService repositoryService=processEngine.getRepositoryService();
        //3:得到ProcessDefinitionQuery對象
        ProcessDefinitionQuery processDefinitionQuery=repositoryService.createProcessDefinitionQuery();
        //4:設置條件
        //orderByProcessDefinitionVersion設置排序方式,根據流程定義的版本號進行排序
        ProcessDefinition processDefinition=processDefinitionQuery.processDefinitionKey("day")
                .orderByProcessDefinitionVersion()
                .desc()
                .singleResult();
        //輸出流程定義信息

        System.out.println("流程定義ID:"+processDefinition.getId());
        System.out.println("流程定義名稱:"+processDefinition.getName());
        System.out.println("流程定義的Key:"+processDefinition.getKey());
        System.out.println("流程定義的版本號:"+processDefinition.getVersion());
        System.out.println("流程部署的ID:"+processDefinition.getDeploymentId());
    }

}

查詢多個

public class QueryProcessDefinition {
    public static void main(String[] args) {
        //1:定義ProcessEngine對象,自己封裝的工具類也可以 
                    ProcessEngines.getDefaultProcessEngine();
        ProcessEngine processEngine= ReturnProcessEngineUtil.getProcessEngine();
        //2:創建RepositoryService對象
        RepositoryService repositoryService=processEngine.getRepositoryService();
        //3:得到ProcessDefinitionQuery對象
        ProcessDefinitionQuery processDefinitionQuery=repositoryService.createProcessDefinitionQuery();
        //4:設置條件,根據條件查詢
        //orderByProcessDefinitionVersion設置排序方式,根據流程定義的版本號進行排序
        List<ProcessDefinition>list=processDefinitionQuery.processDefinitionKey("day")
                .orderByProcessDefinitionVersion()
                .desc()
                .list();
        //輸出流程定義信息
        for(ProcessDefinition processDefinition :list){
            System.out.println("流程定義ID:"+processDefinition.getId());
            System.out.println("流程定義名稱:"+processDefinition.getName());
            System.out.println("流程定義的Key:"+processDefinition.getKey());
            System.out.println("流程定義的版本號:"+processDefinition.getVersion());
            System.out.println("流程部署的ID:"+processDefinition.getDeploymentId());

        }
    }

}


原創文章,未經允許禁止盜用


 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章