程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> jBPM-4.0中文開發指南-第2章 流程虛擬機

jBPM-4.0中文開發指南-第2章 流程虛擬機

編輯:關於JAVA

第 2 章 流程虛擬機

為了通過插件方式容納多種流程語言和活動,jBPM基於了流程虛擬機。 本質上,流程虛擬機是一個特定的可執行圖形的框架。 一個流程定義表現為一個執行流, 它擁有可以表現為圖形的一種結構。

流程虛擬機將流程定義從活動行為中切分了出來。 流程虛擬機從一個活動到下一個獲得獲取可執行的流程, 並將活動的行為委派給可插拔的Java類。 這裡有一個API(ActivityBehaviour)用來作為 流程虛擬機和活動行為代碼的接口。像jPDL這類的語言僅僅是 一系列活動行為的實現和解析器。

圖 2.1. 流程定義實例

一般來說流程定義都是靜態的。一個流程定義由活動和轉移組成。 一個活動運行時的行為被封裝在一起, 它是來自流程圖形結果的一部分。

圖 2.2. 流程結構類圖

流程虛擬機沒有包含任何活動實現。 它只提供了執行環境和活動API, 可以當做Java組件來編寫ActivityBehaviour的實現。 活動也可以使等待狀態。 這意味著活動的控制流會來自於流程系統的外部。 比如一個人工任務或者異步服務調用。當執行處於等待狀態, 執行的運行時狀態可以保存到一個數據庫中。

一個流程定義可以啟動多個執行。 一個執行是一個指向當前活動的指針。

圖 2.3. 執行實例

為了展示執行的同步路徑, 這裡是一個父子繼承關系, 這樣一個流程實例可以復制執行的同步路徑。

圖 2.4. 執行類圖

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved