Activiti 工作流框架

2021-08-21 09:50:33 字數 2995 閱讀 3186

1:什麼是工作流,工作流的核心物件是什麼,activiti共運算元據庫多少張表

* 工作流就是多個參與者,按照某種預定義的規則,傳遞業務資訊,進行審核的功能乙個框架(activiti)

* processengine,呼叫service,從而運算元據庫的表

* 23張表 

大致分為 (1)  資源庫流程規則表 (2)

執行時資料庫表  (3) 歷史資料庫表 

(4)組織機構表 (5)通用表

activiti的後台是有資料庫的支援,所有的表都以act_開頭。 第二部分是表示表的用途的兩個字母標識。 用途也和服務的api對應。

act_re_*: 're'表示repository。 這個字首的表包含了流程定義和流程靜態資源 (,規則,等等)。

act_ru_*: 'ru'表示runtime。 這些執行時的表,包含流程例項,任務,變數,非同步任務,等執行中的資料。

activiti只在流程例項執行過程中儲存這些資料, 在流程結束時就會刪除這些記錄。 這樣執行時表可以一直很小速度很快。

act_id_*: 'id'表示identity。 這些表包含身份資訊,比如使用者,組等等。

act_hi_*: 'hi'表示history。 這些表包含歷史資料,比如歷史流程例項, 變數,任務等等。

act_ge_*: 通用資料, 用於不同場景下,如存放資源檔案。

資源庫流程規則表

1) act_re_deployment 

部署資訊表

2) act_re_model  流程設計模型部署表

3) act_re_procdef  流程定義資料表

執行時資料庫表

1) act_ru_execution執行時流程執行例項表

2) act_ru_identitylink執行時流程人員表,主要儲存任務節點與參與者的相關資訊

3) act_ru_task執行時任務節點表

4) act_ru_variable執行時流程變數資料表

歷史資料庫表

1) act_hi_actinst 歷史節點表

2) act_hi_attachment歷史附件表

3) act_hi_comment歷史意見表

4) act_hi_identitylink歷史流程人員表

5) act_hi_detail歷史詳情表,提供歷史變數的查詢

6) act_hi_procinst歷史流程例項表

7) act_hi_taskinst歷史任務例項表

8) act_hi_varinst歷史變數表

組織機構表

1) act_id_group

使用者組資訊表

2) act_id_info

使用者擴充套件資訊表

3) act_id_membership

使用者與使用者組對應資訊表

4) act_id_user

使用者資訊表這四

張表很常見,基本的

組織機構管理

,關於使用者認證方面建議還是自己開發一套,元件自帶的功能太簡單,使用中有很多需求難以滿足

通用資料表

1) act_ge_bytearray

二進位制資料表

act_ge_property

屬性資料表儲存整個流程引擎級別的資料,初始化表結構時,會預設插入三條記錄

2:工作流中repositoryservice、runtimeservice、taskservice、historyservice分別表示什麼操作

repositoryservice:流程定義和部署物件

runtimeservice:執行管理,包括流程例項和執行物件(正在執行)

historyservice:歷史管理

identityservice:activiti表的使用者角色組

3:流程例項和執行物件的區別

* 流程從開始到結束的最大分支,乙個流程中,流程例項只有1個

* 執行物件,就是按照流程定義的規則執行一次的操作,乙個流程中,執行物件可以有多個

4:流程變數在專案中的作用

* 1:用來傳遞業務引數,目的就是審核人可以通過流程變數檢視申請人的一些審核資訊

2:在連線的condition中設定流程變數,用來指定應該執行的連線$

3:使用流程變數指定個人任務和組任務的辦理人#

5:activiti工作流中,如果乙個任務完成後,存在多條連線,應該如何處理?

* 使用流程變數

* 當乙個任務完成之後,根據這幾條連線的條件和設定流程變數,例如$,{}符號是boolean型別,判斷走哪條連線

6:activiti工作流中,排他閘道器和並行閘道器都能執行什麼功能

排他閘道器:分支,通過連線的流程變數,判斷執行哪條連線,如果條件不符合,會執行預設的連線離開,注意:只能執行其中的乙個流程。

並行閘道器:可以同時執行多個流程,直到總流程的結束。可以對流程進行分支和聚合,注意:流程例項和執行物件是不一樣的

7:分配個人任務的三種方式

*直接給值,在***x.bpmn檔案中指定

*流程變數$或者#{}

*使用類 監聽這個類(實現乙個介面),指定任務的辦理人(setassgnee())

8:個人任務和組任務的查詢一樣嗎?

* 不一樣

* 都是用taskservice完成(taskservice.createtasquery)

* 個人任務(taskassgnee),組任務(taskcandidateuser)

* 資料庫存放,個人任務(型別:參與),組任務(型別,參與,候選)

9、actitviti 完整的執行過程

(1)畫流程**件xx.bpmn 檔案

(2)部署流程定義(完成任務)

(3)啟動流程例項(啟動任務)

(4)查詢流程(個人任務)

(5)完成任務

(6)結束流程

工作流框架Activiti

最近在看一些專案設計方面的文章,涉及到了工作流技術,於是了解一下。1 概念 工作流 workflow 就是 業務過程的部分或整體在計算機應用環境下的自動化 它主要解決的是 使在多個參與者之間按照某種預定義的規則傳遞文件 資訊或任務的過程自動進行,從而實現某個預期的業務目標,或者促使此目標的實現 工作...

Activiti工作流概述

一 概述 工作流 workflow 就是 業務過程的部分或整體在計算機應用環境下的自動化 它主要解決的是 使在多個參與者之間按照某種預定義的規則傳遞文件 資訊或任務的過程自動進行,從而實現某個預期的業務目標,或者促使此目標的實現 工作流管理系統 workflow management system,...

Activiti工作流課程

activiti5是由alfresco軟體在2010年5月17日發布的業務流程管理 bpm 框架,它是覆蓋了業務流程管理 工作流 服務協作等領域的乙個開源的 靈活的 易擴充套件的可執行流程語言框架。activiti基於apache許可的開源bpm平台,創始人tom baeyens是jboss jbp...