2017-12-22 09:56:06數據庫
Wikipediaapi
"A workflow consists of an orchestrated and repeatable pattern of business activity enabled by the systematic organization of resources into processes 異步
that transform matrials, provide services, or process information. "ide
工做流 workflow 就是工做流程的計算模型,即將工做流程中的工做如何先後組織在一塊兒的邏輯和規則在計算機中以恰當的模型進行表示並對其實施計算。工具
工做流引擎workflow做爲應用系統的一部分,爲之提供對各應用系統有決定做用的根據角色、設計
分工和條件的不一樣決定信息傳遞路由、內容等級等核心解決方案。3d
BPMN (Business Process Model and Notataion) 業務流程模型與符號。orm
BPMN 是一套流程建模的標準, 流程模型的規範。 流程模型包括: 流程圖、協做圖、編排圖、會話圖。xml
Activiti 是一個開源的工做流引擎,實現了 BPMN 2.0 規範,能夠發佈設計好的流程定義,並經過 api 進行流程調度。對象
Activiti 核心是基於 Java 的超快速、超穩定的 BPMN 2.0 流程引擎, 強調流程服務的可嵌入性和可擴展性, 更增強調面向業務人員。
該引擎的中點關注在系統開發的易用性和輕量性上。 每一項 BPM 業務功能 Activiti 流程引擎都以服務的形式提供給開發人員。經過使用這些服務,開發人員構建出功能豐富、輕便且搞笑的BPM應用程序。
以當下主流的開源 Java BPM Activiti , Intellij Idea 爲例
1 Intellij Idea File =》 Setting => Plugins => Browser => ( Searching activiti ) Install
2. 新建一個 BPMN file 文件
3. 展現界面:
核心類: ProcessEngine
1)ProcessEngin 是在 Activiti 中的核心類,其餘類的父類
2)獲取:
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
3)管理流程定義,能夠產生 RepositoryService
RepositoryService repositoryService = ProcessEngine.getRepositoryService(0;
4)執行管理,包括啓動,推動,刪除流程實例, 產生 RuntimeService
RuntimeService runtimeService = processEngine.getRuntimeService();
5)管理任務, 產生TaskService
TaskService taskService = processEngine.getTaskService();
一個配置文件
activiti.cfg.xml
配置流程引擎建立工具的基本參數和數據庫鏈接池參數
五種數據庫表
Activiti 的後臺數據庫相關, 全部的表以 ACT_ 開頭。第二部分表示表的用途的兩個字母標識。
用途和服務的 API 對應。
二十三 表
不一樣的表存放不一樣方面的數據,如流程定義表、任務結點表、流程變量表、任務歷史表。
五項 Service
TaskService, 是 activiti 的任務服務類。 能夠從這個類中獲取任務的信息。
HistoryService,是 activiti 的查詢歷史信息的類。在一個流程執行完成後,這個對象
爲咱們提供查詢歷史信息。
七項基本操做