流程資源可以是各種型別的檔案,在啟動流程或流程例項執行過程中會被讀取。下面介紹常用的流程資源。
流程定義檔案:擴充套件名為bpmn20.xml和bpmn;
流程定義的:用bpmn2.0規範的各種圖形描繪,一般用png的格式;
表單檔案:把表單內容儲存在乙個檔案中,其擴充套件名為drl;
規則檔案:其擴充套件名為drl;
部署流程資源有很多種方法,包括classpath、inputstream、字串、zip格式壓縮包,下面將一一介紹。
public class processdefinitiontest
}
使用inputstream方式部署流程資源需要傳入乙個輸入流及資源的名稱,輸入流的**不限,可以從classpath讀取,也可以從乙個絕對路徑檔案讀取,也可以是從網路上讀取。
//inputstream方式
public void deployementprocessdefinitionbyinputstream() throws filenotfoundexception
利用字串方式可以直接傳入純文字作為資源的**,和前兩種方式類似,字串方式的實現原理是把一組字串的內容轉化為位元組流後再部署。
// 字串方式
public void deployementprocessdefinitionbystring() throws filenotfoundexception
以上3種部署方式一次只能部署乙個資源,除非執行多次deployment.add***()方法,如何一次部署多個資源呢?很簡單,是我們可以使用zip/bar格式壓縮包方式。將資源檔案手動或使用ant指令碼,打包副檔名可以是activiti官方推薦的bar或普通的zip。
// 部署流程定義(zip)
public void deployementprocessdefinitionbyzip()
在部署流程定義這一步,資料庫中操作三張表:
(1)act_re_deployment(部署物件表)
存放流程定義的顯示名和部署時間,每部署一次增加一條記錄
(2)act_re_procdef(流程定義表)
存放流程定義的屬性資訊,部署每個新的流程定義都會在這張表中增加一條記錄。
注意:當流程定義的key相同的情況下,使用的是版本公升級
(3)act_ge_bytearray(資源檔案表)
儲存流程定義相關的部署資訊。即流程定義文件的存放地。每部署一次就會增加兩條記錄,一條是關於bpmn規則檔案的,一條是的(如果部署時只指定了bpmn乙個檔案,activiti會在部署時解析bpmn檔案內容自動生成流程圖)。兩個檔案不是很大,都是以二進位制形式儲存在資料庫中。
4)act_ge_property(主鍵生成表)
主張表將生成下次流程部署的主鍵id。
activity6快速部署流程檔案
工作中用到了activity6,個人覺得activity作為一款優秀的開源工作流引擎框架,得到眾多企業的追捧而且經歷了這麼多年依然生命力不減值得花時間好好研究,接下來將通過幾篇文章好好說說activity6 本篇是第一篇,聊聊怎麼在本地快速將bpmn流程定義檔案快速部署起來,以便後續的研究 1 id...
Activity啟動流程
0x01 public void startactivity intent intent 最終走到 public void startactivityforresult requirespermission intent intent,int requestcode,nullable bundle ...
Activity啟動流程
activity啟動流程很多文章都已經說過了,這裡說一下自己的理解。activity啟動流程分兩種 後邊啟動activity的流程是一樣的,區別是前邊判斷程序是否存在的那部分。activity啟動的前提是已經開機,各項程序和ams等服務已經初始化完成,在這裡也提一下那些內容。ipc 跨程序通訊,an...