activiti基礎知識

1>activiti.cfg.xml

是一個spring配置文件,是activiti的核心配置文件


2》ProcessEngineConfiguration

ProcessEngineConfiguration用於建立 ProcessEngine

   	Activiti單獨運行:StandaloneProcessEngineConfiguration
	Activiti和spring整合運行:SpringProcessEngineConfiguration


3>ProcessEngine

ProcessEngine 是一個門面接口,引擎核心對象,經過ProcessEngine就能夠獲取各各service

4》Service

RepostitoryService:用於資源管理,用於:流程定義部署、查詢流程定義資源 
TaskService:任務管理,用於我的任務、組任務。
RuntimeService:流程當前運行管理,用於:啓動一個流程實例是、查詢當前運行的流程。。
historyService:流程歷史管理。
identityService:用戶身份管理,用於:建立用戶、組、用戶和組的關係 …

表的命名規則:
Activiti的表都以ACT_開頭。 第二部分是表示表的用途的兩個字母標識。 用途也和服務的API對應。
ACT_RE_*: 'RE'表示repository。 這個前綴的表包含了流程定義和流程靜態資源 (圖片,規則,等等。
ACT_RU_*: 'RU'表示runtime。 這些運行時的表,包含流程實例,任務,變量,異步任務,等運行中的數據。 Activiti只在流程實例執行過程當中保存這些數據, 在流程結束時就會刪除這些記錄。 這樣運行時表能夠一直很小速度很快。
ACT_ID_*: 'ID'表示identity。 這些表包含身份信息,好比用戶,組等等。
ACT_HI_*: 'HI'表示history。 這些表包含歷史數據,好比歷史流程實例, 變量,任務等等。
ACT_GE_*: GE表示general。通用數據, 用於不一樣場景下。


Activiti核心配置文件:activiti.cfg.xml
ProcessEngineConfiguration:經過activiti.cfg.xml建立。
ProcessEngine:經過ProcessEngineConfiguration建立
Service:經過ProcessEngine獲取。 (核心重點)


流程定義部署數據庫操做:
執行流程定義部署後,向下邊表中寫數據:

SELECT * FROM act_re_deployment  #流程定義部署表
記錄每一次流程部署的信息,一次部署只寫一條記錄。
字段:
Id_:部署id

SELECT * FROM act_re_procdef #流程定義信息表
記錄每一次部署的流程定義信息,一次部署能夠部署多個流程定義。
字段:
id_:流程定義id
結構:流程定義key:流程定義版本:流水號
Name_:流程定義名稱,用戶要查詢
Key_:流程定義的標識,一個流程定義一個key,無論版本號,一個採購流程就是一個key
Version_:流程定義的版本號,相同的key,每次部署版本號自動增長1
Deployment_Id_:對應的流程部署表的id
RESOURCE_NAME_:流程定義資源中bpmn文件的名稱
DGRM_RESOURCE_NAME_:流程定義資源中png文件的名稱 

act_re_deployment和act_re_procdef是一對多關係 。

SELECT * FROM act_ge_bytearray #資源表(通用表)
記錄了流程定義的資源信息(bpmn和png)

*.bpmnxml裏有一個key是流程標識,部署流程時候,能夠是多個bpmnxml,也就是能夠同時部署多個流程定義,可是通常一次部署一個。部署產生部署id,流程定義id存入表裏。
把流程定義發佈到Activiti引擎後,咱們能夠基於它發起新流程實例(流程實例id)。 對每一個流程定義,都
能夠不少流程實例。 流程定義是「藍圖」,流程實例是它的一個運行的執行。

所與流程運行狀態相關的東西均可以經過RuntimeService得到。
相關文章
相關標籤/搜索