Activiti学习(二)数据表结构
Activiti工作流引擎數(shù)據(jù)庫表結(jié)構(gòu)
數(shù)據(jù)庫表的命名
Acitiviti數(shù)據(jù)庫中表的命名都是以ACT_開頭的。第二部分是一個(gè)兩個(gè)字符用例表的標(biāo)識(shí)。此用例大體與服務(wù)API是匹配的。
l??????? ACT_RE_*:’RE’表示repository。帶此前綴的表包含的是靜態(tài)信息,如,流程定義,流程的資源(圖片,規(guī)則等)。
l??????? ACT_RU_*:’RU’表示runtime。這是運(yùn)行時(shí)的表存儲(chǔ)著流程變量,用戶任務(wù),變量,職責(zé)(job)等運(yùn)行時(shí)的數(shù)據(jù)。Activiti只存儲(chǔ)實(shí)例執(zhí)行期間的運(yùn)行時(shí)數(shù)據(jù),當(dāng)流程實(shí)例結(jié)束時(shí),將刪除這些記錄。這就保證了這些運(yùn)行時(shí)的表小且快。
l??????? ACT_ID_*:’ID’表示identity。這些表包含標(biāo)識(shí)的信息,如用戶,用戶組,等等。
l??????? ACT_HI_*:’HI’表示history。就是這些表包含著歷史的相關(guān)數(shù)據(jù),如結(jié)束的流程實(shí)例,變量,任務(wù),等等。
l??????? ACT_GE_*:普通數(shù)據(jù),各種情況都使用的數(shù)據(jù)。
數(shù)據(jù)庫表結(jié)構(gòu)圖
?
?
?
?
?
數(shù)據(jù)庫表結(jié)構(gòu)說明
l??????? ACT_GE_PROPERTY:屬性數(shù)據(jù)表。存儲(chǔ)這個(gè)流程引擎級(jí)別的數(shù)據(jù)。
l??????? ACT_GE_BYTEARRAY:用來保存部署文件的大文本數(shù)據(jù)
l??????? ACT_RE_DEPLOYMENT:用來存儲(chǔ)部署時(shí)需要持久化保存下來的信息
l??????? ACT_RE_PROCDEF:業(yè)務(wù)流程定義數(shù)據(jù)表
注:此表和ACT_RE_DEPLOYMENT是多對(duì)一的關(guān)系,即,一個(gè)部署的bar包里可能包含多個(gè)流程定義文件,每個(gè)流程定義文件都會(huì)有一條記錄在ACT_REPROCDEF表內(nèi),每個(gè)流程定義的數(shù)據(jù),都會(huì)對(duì)于ACT_GE_BYTEARRAY表內(nèi)的一個(gè)資源文件和PNG圖片文件。和ACT_GE_BYTEARRAY的關(guān)聯(lián)是通過程序用ACT_GE_BYTEARRAY.NAME與ACT_RE_PROCDEF.NAME_完成的,在數(shù)據(jù)庫表結(jié)構(gòu)中沒有體現(xiàn)。
l??????? ACT_ID_GROUP:用來存儲(chǔ)用戶組信息。
l??????? ACT_ID_MEMBERSHIP:用來保存用戶的分組信息
l??????? ACT_ID_USER:
l??????? ACT_RU_EXECUTION:
l??????? ACT_RU_TASK:運(yùn)行時(shí)任務(wù)數(shù)據(jù)表。
l??????? ACT_RU_IDENTITYLINK:任務(wù)參與者數(shù)據(jù)表。主要存儲(chǔ)當(dāng)前節(jié)點(diǎn)參與者的信息。
l??????? ACT_RU_VARIABLE:運(yùn)行時(shí)流程變量數(shù)據(jù)表。
l??????? ACT_HI_PROCINST:
l??????? ACT_HI_ACTINST:
l??????? ACT_HI_TASKINST:
l??????? ACT_HI_DETAIL:啟動(dòng)流程或者在任務(wù)complete之后,記錄歷史流程變量
l??????? ACT_HI_COMMENT 意見表
結(jié)論及總結(jié)
l??????? 流程文件部署主要涉及到3個(gè)表,分別是:ACT_GE_BYTEARRAY、ACT_RE_DEPLOYMENT、ACT_RE_PROCDEF。主要完成“部署包”-->“流程定義文件”-->“所有包內(nèi)文件”的解析部署關(guān)系。從表結(jié)構(gòu)中可以看出,流程定義的元素需要每次從數(shù)據(jù)庫加載并解析,因?yàn)榱鞒潭x的元素沒有轉(zhuǎn)化成數(shù)據(jù)庫表來完成,當(dāng)然流程元素解析后是放在緩存中的,具體的還需要后面詳細(xì)研究。
l??????? 流程定義中的java類文件不保存在數(shù)據(jù)庫里?。
l??????? 組織機(jī)構(gòu)的管理相對(duì)較弱,如果要納入單點(diǎn)登錄體系內(nèi)還需要改造完成,具體改造方法有待研究。
l??????? 運(yùn)行時(shí)對(duì)象的執(zhí)行與數(shù)據(jù)庫記錄之間的關(guān)系需要繼續(xù)研究
l??????? 歷史數(shù)據(jù)的保存及作用需要繼續(xù)研究。
?
?
?
Activiti使用Mybatis3做持久化工作,可以在配置中設(shè)置流程引擎啟動(dòng)時(shí)創(chuàng)建表。
Activiti使用到的表都是ACT_開頭的。
ACT_RE_*:流程定義存儲(chǔ)。
ACT_RU_*:流程執(zhí)行記錄,記錄流程啟動(dòng)到結(jié)束的所有動(dòng)作,流程結(jié)束后會(huì)清除相關(guān)記錄。
ACT_ID_*:用戶記錄,流程中使用到的用戶和組。
ACT_HI_*:流程執(zhí)行的歷史記錄。
ACT_GE_*:通用數(shù)據(jù)及設(shè)置。
使用到的表:
ACT_GE_BYTEARRAY:流程部署的數(shù)據(jù)。
ACT_GE_PROPERTY:通用設(shè)置。
ACT_HI_ACTINST:流程活動(dòng)的實(shí)例。
ACT_HI_ATTACHMENT:
ACT_HI_COMMENT:
ACT_HI_DETAIL:
ACT_HI_PROCINST:流程實(shí)例。
ACT_HI_TASKINST:任務(wù)實(shí)例。
ACT_ID_GROUP:用戶組。
ACT_ID_INFO:
ACT_ID_MEMBERSHIP:
ACT_ID_USER:用戶。
ACT_RE_DEPLOYMENT:部署記錄。
ACT_RE_PROCDEF:流程定義。
ACT_RU_EXECUTION:流程執(zhí)行記錄。
ACT_RU_IDENTITYLINK:
ACT_RU_JOB:
ACT_RU_TASK:執(zhí)行的任務(wù)記錄。
ACT_RU_VARIABLE:執(zhí)行中的變量記錄。
?
?
activiti-administrator
自帶的用戶管理系統(tǒng),維護(hù)用戶和組,需要配置數(shù)據(jù)連接參數(shù),在activiti-administrator\WEB-INF\applicationContext.xml中,并加入JDBC驅(qū)動(dòng)包。
activiti-cycle
PVM活動(dòng)檢測(cè)的,由activiti-rest提供服務(wù),不需配置。
activiti-explorer
可以查看用戶任務(wù)和啟動(dòng)流程,由activiti-rest提供服務(wù),不需配置。
activiti-kickstart
簡(jiǎn)單的點(diǎn)對(duì)點(diǎn)流程定義維護(hù)工具,需要配置數(shù)據(jù)連接,把a(bǔ)ctiviti.cfg.xml文件放在classes下,并加入驅(qū)動(dòng)包。
activiti-modeler
在線編輯和維護(hù)流程定義的工具,最后以文件夾方式部署,需要配置activiti-modeler\WEB-INF\classes\configuration.properties文件。
activiti-probe
PVM的觀測(cè)服務(wù),由activiti-rest提供服務(wù),不需配置,可以查看deployment、processdefinition、processinstance、database。
activiti-rest
其他幾個(gè)應(yīng)用的服務(wù)提供者,需要配置數(shù)據(jù)連接,把a(bǔ)ctiviti.cfg.xml文件放在classes下,并加入驅(qū)動(dòng)包。
?
轉(zhuǎn)載于:https://www.cnblogs.com/wudi521/p/5363546.html
總結(jié)
以上是生活随笔為你收集整理的Activiti学习(二)数据表结构的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: WWDC 2014 Session笔记
- 下一篇: 亿华通推出 180kW 氢燃料电池发动机