Activiti工作流面試相關知識!

1:什麼是工作流,工作流的核心對象是什麼,activiti共操作數據庫多少張表
* 工作流就是多個參與者,按照某種預定義的規則,傳遞業務信息,進行審覈的功能一個框架(Activiti)
* processEngine,調用Service,從而操作數據庫的表
* 23表

2:工作流中RepositoryService、RuntimeService、TaskService、HistoryService分別表示什麼操作
RepositoryService:流程定義和部署對象
RuntimeService:執行管理,包括流程實例和執行對象(正在執行)
TaskService:執行任務相關的(正在執行)
HistoryService:歷史管理
IdentityService:Activiti表的用戶角色組

3:流程實例和執行對象的區別
* 流程從開始到結束的最大分支,一個流程中,流程實例只有1個
* 執行對象,就是按照流程定義的規則執行一次的操作,一個流程中,執行對象可以有多個

4:流程變量在項目中的作用
* 1:用來傳遞業務參數,目的就是審覈人可以通過流程變量查看申請人的一些審覈信息
2:在連線的condition中設置流程變量,用來指定應該執行的連線${message==’重要’}
3:使用流程變量指定個人任務和組任務的辦理人#{userID}

5:activiti工作流中,如果一個任務完成後,存在多條連線,應該如何處理?
* 使用流程變量
* 當一個任務完成之後,根據這幾條連線的條件和設置流程變量,例如${流程變量的名稱==’流程變量的值’},{}符號是boolean類型,判斷走哪條連線
6:activiti工作流中,排他網關和並行網關都能執行什麼功能
排他網關:分支,通過連線的流程變量,判斷執行哪條連線,如果條件不符合,會執行默認的連線離開,注意:只能執行其中的一個流程。
並行網關:可以同時執行多個流程,直到總流程的結束。可以對流程進行分支和聚合,注意:流程實例和執行對象是不一樣的

7:分配個人任務的三種方式
*直接給值,在Xxxx.bpmn文件中指定
*流程變量${流程變量的名稱}或者#{}
*使用類 監聽這個類(實現一個接口),指定任務的辦理人(setAssgnee())

8:個人任務和組任務的查詢一樣嗎?
* 不一樣
* 都是用TaskService完成(TaskService.createTasQuery)
* 個人任務(taskAssgnee),組任務(taskCandidateUser)
* 數據庫存放,個人任務(類型:參與),組任務(類型,參與,候選)

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