工作流的概念:
工作流(workflow),就是「業務過程的部分或整體在計算機應用環境下的自動化」,它主要解決的是「使在多個參與者之間按照某種預定義的規則傳遞文件、資訊或任務的過程自動進行,從而實現某個預期的業務目標,或者促使此目標的實現」。通俗的說,流程就是多個人在一起合作完成某件事情的步驟,把步驟變成計算機能理解的形式就是工作流。
常見的工作流引擎有:osworkflow、jbpm、activiti(對jbpm的公升級)
如果在乙個專案中我們需要引入工作流的話,首先需要引入相關jar包,然後獲得乙個工作流引擎,而獲得這個工作流引擎的方式有三種:
1、通過**方式獲得:
@test
public void getprocessengine1()
2、通重載入指定的xml檔案獲取:
@test
public void getprocessengine2()
3、通重載入預設的xml檔案獲取,預設xml檔名稱為activiti.cfg.xml
@test
public void getprocessengine3()
當獲得了工作流引擎之後,會建立乙個資料庫,資料庫中有預設的23張表
資源庫流程規則表
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 二進位制資料表
2) act_ge_property 屬性資料表儲存整個流程引擎級別的資料,初始化表結構時,會預設插入三條記錄
還有兩張表不怎麼常用
1) act_ru_event_subscr
2) act_ru_job
接下來就是activiti的核心api部分
這些service可以由processengine獲得,且這些service都有著各自的任務
repositoryservice管理流程定義
runtimeservice執行管理,包括啟動、推進、刪除流程例項等操作
taskservice任務管理
historyservice歷史管理(執行完的資料的管理)
identityservice組織機構管理
formservice
乙個可選服務,任務表單管理
managerservice
接下來是完成乙個工作流程的基本操作步驟,首先我們需要安裝activiti外掛程式,然後我們構建乙個流程例項並部署上去
部署流程還有一種方法也可以:載入壓縮檔案(zip格式)
接下來就是啟動流程
在流程啟動的過程中,我們可以查詢流程的進度
@test
public void query()
}
接下來就是完成每乙個流程
Activiti工作流之任務
回顧 activiti工作流之簡介與環境搭建 activiti工作流之流程部署和相關操作 activiti工作流之任務的執行 查詢 完成 activiti工作流之流程變數 activiti工作流之歷史查詢 activiti工作流之流程分支 activiti工作流之閘道器 11張表 select fr...
Activiti工作流概述
一 概述 工作流 workflow 就是 業務過程的部分或整體在計算機應用環境下的自動化 它主要解決的是 使在多個參與者之間按照某種預定義的規則傳遞文件 資訊或任務的過程自動進行,從而實現某個預期的業務目標,或者促使此目標的實現 工作流管理系統 workflow management system,...
Activiti工作流課程
activiti5是由alfresco軟體在2010年5月17日發布的業務流程管理 bpm 框架,它是覆蓋了業務流程管理 工作流 服務協作等領域的乙個開源的 靈活的 易擴充套件的可執行流程語言框架。activiti基於apache許可的開源bpm平台,創始人tom baeyens是jboss jbp...