一、資料庫建表:
建表說明目前省略
二、資料庫表結構說明:
1、用模組化工具反向出來的資料庫表結構圖如下:
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLicGcq5SN4MjMzIDO0EzNxYDMxUzMwMTMvwVP9EERUlGR0pFZuBXY4ADOwYmNHllYBd2LcRXZu5iNyEjLoBnL5MTNn1Wavw1LcpDc0RHaiojIsJye.jpg)
2、資料庫表結構說明:
- ACT_GE_PROPERTY:屬性資料表。存儲整個流程引擎級别的資料。
-
- NAME_:屬性名稱
- VALUE_:屬性值
- REV_INT:版本号?
- ACT_GE_BYTEARRAY:用來儲存部署檔案的大文本資料的。
-
- ID_:資源檔案編号,自增長
- REV_INT:版本号?
- NAME_:資源檔案名稱
- DEPLOYMENT_ID_:來自于父表ACT_RE_DEPLOYMENT中的主鍵
- BYTES_:大文本類型,存儲文本位元組流
- ACT_RE_DEPLOYMENT:用來存儲部署時需要被持久化儲存下來的資訊。
-
- ID_:部署編号,自增長
- NAME_:部署的包名稱
- DEPLOY_TIME_:部署時間
- ACT_RE_PROCDEF:業務流程定義資料表。
-
- ID_:流程ID,由“ 流程編号:流程版本号:自增長ID ” 組成
- CATEGORY_:流程指令空間(該編号就是流程檔案targetNamespace的屬性值)
- NAME_:流程名稱(該編号就是流程檔案process元素的name屬性值)
- KEY_:流程編号(該編号就是流程檔案process元素的id屬性值)
- VERSION_:流程版本号(由程式控制,新增即為1,修改後依次加1來完成的)
- DEPLOYMENT_ID_:部署編号
- RESOURCE_NAME_:資源檔案名稱
- DGRM_RESOURCE_NAME_:圖檔資源檔案名稱
- HAS_START_FORM_KEY_:是否有Start Form Key。
注意:此表與ACT_RE_DEPLOYMENT是多對一的關系,即,一個部署的bar包裡可能包含多個流程定義檔案,每個流程定義檔案都會有一條記錄在ACT_RE_PROCDEF表内,每條流程定義的資料,都會對應ACT_GE_BYTEARRAY表内的一個資源檔案和PNG圖檔檔案。與ACT_GE_BYTEARRAY的關聯是通過程式用ACT_GE_BYTEARRAY.NAME_與ACT_RE_PROCDEF.RESOURCE_NAME_完成的,在資料庫表結構内沒有展現。
- ACT_ID_GROUP:用來儲存使用者組資訊。
-
- ID_:使用者組名
- REV_INT:版本号?
- NAME_:使用者組描述資訊
- TYPE_:使用者組類型
- ACT_ID_MEMBERSHIP:用來儲存使用者分組資訊。
-
- USER_ID_:使用者名
- GROUP_ID_:使用者組名
- ACT_ID_USER:用來儲存使用者資訊。
-
- ID_:使用者名
- REV_INT:版本号?
- FIRST_:使用者名稱
- LAST_:使用者姓氏
- EMAIL_:郵箱
- PWD_:登入密碼
- ACT_RU_EXECUTION:
-
- ID_:
- REV_:版本号?
- PROC_INST_ID_:流程執行個體編号
- BUSINESS_KEY_:業務編号
- PARENT_ID_:
- PROC_DEF_ID_:流程ID
- SUPER_EXEC_:
- ACT_ID_:
- IS_ACTIVE_:
- IS_CONCURRENT_:
- IS_SCOPE_:
- ACT_RU_JOB:運作時定時任務資料表。
-
- ID_:
- REV_:
- TYPE_:
- LOCK_EXP_TIME_:
- LOCK_OWNER_:
- EXCLUSIVE_:
- EXECUTION_ID_:
- PROCESS_INSTANCE_ID_:
- RETRIES_:
- EXCEPTION_STACK_ID_:
- EXCEPTION_MSG_:
- DUEDATE_:
- REPEAT_:
- HANDLER_TYPE_:
- HANDLER_CFG_:
- ACT_RU_TASK:運作時任務資料表。
- ID_:
- REV_:
- EXECUTION_ID_:
- PROC_INST_ID_:
- PROC_DEF_ID_:
- NAME_:
- DESCRIPTION_:
- TASK_DEF_KEY_:
- ASSIGNEE_:
- PRIORITY_:
- CREATE_TIME_:
- ACT_RU_IDENTITYLINK:任務參與者資料表。主要存儲目前節點參與者的資訊。
-
- ID_:
- REV_:
- GROUP_ID_:
- TYPE_:
- USER_ID_:
- TASK_ID_:
- ACT_RU_VARIABLE:運作時流程變量資料表。
-
- ID_:
- REV_:
- TYPE_:
- NAME_:
- EXECUTION_ID_:
- PROC_INST_ID_:
- TASK_ID_:
- BYTEARRAY_ID_:
- DOUBLE_:
- LONG_:
- TEXT_:
- TEXT2_:
- ACT_HI_PROCINST:
- ACT_HI_ACTINST:
- ACT_HI_TASKINST:
- ACT_HI_DETAIL:
3、結論及改造建議
-
- 流程檔案部署主要涉及到3個表,分别是:ACT_GE_BYTEARRAY、ACT_RE_DEPLOYMENT、ACT_RE_PROCDEF。主要完成“部署包”-->“流程定義檔案”-->“所有包内檔案”的解析部署關系。從表結構中可以看出,流程定義的元素需要每次從資料庫加載并解析,因為流程定義的元素沒有轉化成資料庫表來完成,當然流程元素解析後是放在緩存中的,具體的還需要後面詳細研究。
- 流程定義中的java類檔案不儲存在資料庫裡 。
- 組織機構的管理相對較弱,如果要納入單點登入體系内還需要改造完成,具體改造方法有待研究。
- 運作時對象的執行與資料庫記錄之間的關系需要繼續研究
- 曆史資料的儲存及作用需要繼續研究。