1. 程式人生 > >activiti的幾個核心api和知識點

activiti的幾個核心api和知識點

這是從這個部落格看到的https://blog.csdn.net/zezezuiaiya/article/details/78121663

部落格的內容很多,一步步消化

1.ProcessEngine 

ProcessEngine

說明:

1) 在Activiti中最核心的類,其他的類都是由他而來。

2) 產生方式:

可以直接呼叫ProcessEngines的getDefaultProceeEngine方法時會自動載入classpath下名為activiti.cfg.xml檔案。

/**
 * 會預設按照Resources目錄下的activiti.cfg.xml建立流程引擎
 */
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();

所以activiti檔案配置名為 activiti.cfg.xml 就行了

3) 可以產生RepositoryService

4) 可以產生RuntimeService

5) 可以產生TaskService

各個Service的作用:

RepositoryService 管理流程定義

RuntimeService 執行管理,包括啟動、推進、刪除流程例項等操作

TaskService 任務管理

HistoryService 歷史管理(執行完的資料的管理)

IdentityService 組織機構管理

FormService 一個可選服務,任務表單管理

ManagerService

2.RepositoryService

是Activiti的倉庫服務類。所謂的倉庫指流程定義文件的兩個檔案:bpmn檔案和流程圖片。

1) 產生方式

2) 可以產生DeploymentBuilder,用來定義流程部署的相關引數

3) 刪除流程定義

3.RuntimeService

是activiti的流程執行服務類。可以從這個服務類中獲取很多關於流程執行相關的資訊。

4.TaskService

是activiti的任務服務類。可以從這個類中獲取任務的資訊。

5.HistoryService

是activiti的查詢歷史資訊的類。在一個流程執行完成後,這個物件為我們提供查詢歷史資訊。

6.ProcessDefinition

流程定義類。可以從這裡獲得資原始檔等。

7.ProcessInstance

代表流程定義的執行例項。如范冰冰請了一天的假,她就必須發出一個流程例項的申請。一個流程例項包括了所有的執行節點。我們可以利用這個物件來了解當前流程例項的進度等資訊。流程例項就表示一個流程從開始到結束的最大的流程分支,即一個流程中流程例項只有一個。

8.Execution

Activiti用這個物件去描述流程執行的每一個節點。在沒有併發的情況下,Execution就是同ProcessInstance。流程按照流程定義的規則執行一次的過程,就可以表示執行物件Execution。

總結: 
* 一個流程中,執行物件可以存在多個,但是流程例項只能有一個。 
* 當流程按照規則只執行一次的時候,那麼流程例項就是執行物件。

activiti的內容還是很多的,瞭解的還不夠,週末會繼續瞭解