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得到。