1. 程式人生 > >(四)activiti的幾個核心類

(四)activiti的幾個核心類

先來一張圖:

計算機生成了可選文字: ProcessEngineCOn偏gura廿ona比v衡.魂.xml_一一一ProcessEngineRePos而ry義州ce一Taskse四ICe.de而鉀交rviceRUn竹me女州仁eManagemen6ery畝ceHistoryservice

在前幾篇文章匯中已經整合好了activiti,最後我們獲取到的是activiti對外提供的7個核心服務,所有針對activiti的操作都是使用這7個核心服務來執行的。這7個服務中有些常用,有些使用的並不是那麼頻繁,下面逐一講解,其中也會捎帶講解些activiti的執行機理。

repositoryServiceactiviti是不能直接識別xml格式的流程圖的,流程圖檔案必須被部署到activiti中才能被activiti識別並使用。而這個過程就是使用repositoryService來完成的,流程圖被匯入後,會放到act_re_打頭的幾個表中。repositoryService

提供了若干個介面,既可以部署xml檔案到資料庫中,也可以從資料庫檢索特定流程圖供處理。

runtimeServiceactiviti最重要的一個服務,基本上所有的關於流程的操作都是通過此服務來執行的。例如啟動流程、審批、會籤等等。

formService:工作流的設計思路之一就是將每個節點需要顯示的資料直接繫結到此節點。而formService就是專門為此服務的,使用formService可以獲取某個節點繫結的表單資料。當然,如果沒有表單繫結到此節點,此服務就沒有任何用處。

identityServiceactiviti自帶的用於管理自身的組織機構的服務。activiti自身的組織機構包括

usergroup兩大類,而usergroup以及usergroup的關係都是通過自服務來維護的。因此如果需要使用activiti自身的組織機構的,就會使用到此服務。不過通常情況下我們都是是用的框架中的身份認證和組織機構,所以此服務使用頻率也不高。

taskService:任務是activiti的核心功能之一,所有涉及到任務的操作都是通過此服務來完成的。例如任務的查詢、分配、認領、完成等。

historyService:所有流程例項的資訊都會被儲存的歷史資訊中,當一個流程例項結束之前,它是被儲存在runtimehistory兩個地方,當它結束後,就只有history裡了。

managementService

:提供對activiti資料庫的直接訪問,因此通常情況下使用不到此服務。