日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Activiti学习(二)数据表结构

發布時間:2023/12/15 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Activiti学习(二)数据表结构 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Activiti工作流引擎數據庫表結構

數據庫表的命名

Acitiviti數據庫中表的命名都是以ACT_開頭的。第二部分是一個兩個字符用例表的標識。此用例大體與服務API是匹配的。

l??????? ACT_RE_*:’RE’表示repository。帶此前綴的表包含的是靜態信息,如,流程定義,流程的資源(圖片,規則等)。

l??????? ACT_RU_*:’RU’表示runtime。這是運行時的表存儲著流程變量,用戶任務,變量,職責(job)等運行時的數據。Activiti只存儲實例執行期間的運行時數據,當流程實例結束時,將刪除這些記錄。這就保證了這些運行時的表小且快。

l??????? ACT_ID_*:’ID’表示identity。這些表包含標識的信息,如用戶,用戶組,等等。

l??????? ACT_HI_*:’HI’表示history。就是這些表包含著歷史的相關數據,如結束的流程實例,變量,任務,等等。

l??????? ACT_GE_*:普通數據,各種情況都使用的數據。

數據庫表結構圖

?

?

?

?

?

數據庫表結構說明

l??????? ACT_GE_PROPERTY:屬性數據表。存儲這個流程引擎級別的數據。

  • NAME_:屬性名稱
  • VALUE_:屬性值
  • REV_INT:版本號
  • l??????? ACT_GE_BYTEARRAY:用來保存部署文件的大文本數據

  • ID_:資源文件編號,自增長
  • REV_INT:版本號
  • NAME_:資源文件名稱
  • DEPLOYMENT_ID_:來自于父表ACT_RE_DEPLOYMENT的主鍵
  • BYTES_:大文本類型,存儲文本字節流
  • l??????? ACT_RE_DEPLOYMENT:用來存儲部署時需要持久化保存下來的信息

  • ID_:部署編號,自增長
  • NAME_:部署包的名稱
  • DEPLOY_TIME_:部署時間
  • l??????? 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_FROM_KEY_:是否有Start From Key
  • 注:此表和ACT_RE_DEPLOYMENT是多對一的關系,即,一個部署的bar包里可能包含多個流程定義文件,每個流程定義文件都會有一條記錄在ACT_REPROCDEF表內,每個流程定義的數據,都會對于ACT_GE_BYTEARRAY表內的一個資源文件和PNG圖片文件。和ACT_GE_BYTEARRAY的關聯是通過程序用ACT_GE_BYTEARRAY.NAME與ACT_RE_PROCDEF.NAME_完成的,在數據庫表結構中沒有體現。

    l??????? ACT_ID_GROUP:用來存儲用戶組信息。

  • ID_:用戶組名*
  • REV_INT:版本號
  • NAME_:用戶組描述信息*
  • TYPE_:用戶組類型
  • l??????? ACT_ID_MEMBERSHIP:用來保存用戶的分組信息

  • USER_ID_:用戶名
  • GROUP_ID_:用戶組名
  • l??????? ACT_ID_USER:

  • ID_:用戶名
  • REV_INT:版本號
  • FIRST_:用戶名稱
  • LAST_:用戶姓氏
  • EMAIL_:郵箱
  • PWD_:密碼
  • l??????? ACT_RU_EXECUTION:

  • ID_:
  • REV_:版本號
  • PROC_INST_ID_:流程實例編號
  • BUSINESS_KEY_:業務編號
  • PARENT_ID_:找到該執行實例的父級,最終會找到整個流程的執行實例
  • PROC_DEF_ID_:流程ID
  • SUPER_EXEC_: 引用的執行模板
  • ACT_ID_: 節點id
  • IS_ACTIVE_: 是否訪問
  • IS_CONCURRENT_:
  • IS_SCOPE_:?
  • l??????? ACT_RU_TASK:運行時任務數據表。

  • ID_:
  • REV_:
  • EXECUTION_ID_: 執行實例的id
  • PROC_INST_ID_: 流程實例的id
  • PROC_DEF_ID_:? 流程定義的id,對應act_re_procdef 的id_
  • NAME_:? 任務名稱,對應 ***task 的name
  • PARENT_TASK_ID_ : 對應父任務
  • DESCRIPTION_:
  • TASK_DEF_KEY_: ***task 的id
  • OWNER_?? : 發起人
  • ASSIGNEE_: 分配到任務的人
  • DELEGATION_ :? 委托人
  • PRIORITY_: 緊急程度
  • CREATE_TIME_: 發起時間
  • DUE_TIME_:審批時長
  • l??????? ACT_RU_IDENTITYLINK:任務參與者數據表。主要存儲當前節點參與者的信息。

  • ID_:? 標識
  • REV_: 版本
  • GROUP_ID_: 組織id
  • TYPE_: 類型
  • USER_ID_: 用戶id
  • TASK_ID_: 任務id
  • l??????? ACT_RU_VARIABLE:運行時流程變量數據表。

  • ID_:標識
  • REV_:版本號
  • TYPE_:數據類型
  • NAME_:變量名
  • EXECUTION_ID_: 執行實例id
  • PROC_INST_ID_: 流程實例id
  • TASK_ID_: 任務id
  • BYTEARRAY_ID_:
  • DOUBLE_:若數據類型為double ,保存數據在此列
  • LONG_: 若數據類型為Long保存數據到此列
  • TEXT_: string 保存到此列
  • TEXT2_:
  • l??????? ACT_HI_PROCINST:

  • ID_ : 唯一標識
  • PROC_INST_ID_ : 流程ID
  • BUSINESS_KEY_ : 業務編號
  • PROC_DEF_ID_ : 流程定義id
  • START_TIME_ :? 流程開始時間
  • ENT__TIME :? 結束時間
  • DURATION_ : 流程經過時間
  • START_USER_ID_ : 開啟流程用戶id
  • START_ACT_ID_ : 開始節點
  • END_ACT_ID_: 結束節點
  • SUPER_PROCESS_INSTANCE_ID_ : 父流程流程id
  • DELETE_REASON_ : 從運行中任務表中刪除原因
  • l??????? ACT_HI_ACTINST:

  • ID_ : 標識
  • PROC_DEF_ID_ :流程定義id
  • PROC_INST_ID_ : 流程實例id
  • EXECUTION_ID_ : 執行實例
  • ACT_ID_ : 節點id
  • ACT_NAME_ : 節點名稱
  • ACT_TYPE_ : 節點類型
  • ASSIGNEE_ : 節點任務分配人
  • START_TIME_ : 開始時間
  • END_TIME_ : 結束時間
  • DURATION : 經過時長
  • l??????? ACT_HI_TASKINST:

  • ID_ : 標識
  • PROC_DEF_ID_ : 流程定義id
  • TASK_DEF_KEY_ : 任務定義id
  • PROC_INST_ID_ : 流程實例id
  • EXECUTION_ID_ : 執行實例id
  • PARENT_TASK_ID_ : 父任務id
  • NAME_ : 任務名稱
  • DESCRIPTION_ : 說明
  • OWNER_ : 擁有人(發起人)
  • ASSIGNEE_ : 分配到任務的人
  • START__TIME_ : 開始任務時間
  • END_TIME_ : 結束任務時間
  • DURATION_ : 時長
  • DELETE_REASON_ :從運行時任務表中刪除的原因
  • PRIORITY_ : 緊急程度
  • DUE_DATE_ :
  • l??????? ACT_HI_DETAIL:啟動流程或者在任務complete之后,記錄歷史流程變量

  • ID_ : 標識
  • TYPE_ : variableUpdate 和 formProperty 兩種值
  • PROC_INST_ID_ : 對應流程實例id
  • EXECUTION_ID_ : 對應執行實例id
  • TASK_ID_ : 對應任務id
  • ACT_INST_ID : 對應節點id
  • NAME_ : 歷史流程變量名稱,或者表單屬性的名稱
  • VAR_TYPE_ : 定義類型
  • REV_ : 版本
  • TIME_ : 導入時間
  • BYTEARRAY_ID_
  • DOUBLE_ : 如果定義的變量或者表單屬性的類型為double,他的值存在這里
  • LONG_ : 如果定義的變量或者表單屬性的類型為LONG ,他的值存在這里
  • TEXT_ :  如果定義的變量或者表單屬性的類型為string,值存在這里
  • TEXT2_:
  • l??????? ACT_HI_COMMENT 意見表

  • ID_ :標識
  • TYPE_ : 意見記錄類型 為comment 時 為處理意見
  • TIME_ : 記錄時間
  • USER_ID_ :
  • TASK_ID_ : 對應任務的id
  • PROC_INST_ID_ : 對應的流程實例的id
  • ACTION_ : 為AddComment 時為處理意見
  • MESSAGE_ : 處理意見
  • FULL_MSG_ :
  • 結論及總結

    l??????? 流程文件部署主要涉及到3個表,分別是:ACT_GE_BYTEARRAY、ACT_RE_DEPLOYMENT、ACT_RE_PROCDEF。主要完成“部署包”-->“流程定義文件”-->“所有包內文件”的解析部署關系。從表結構中可以看出,流程定義的元素需要每次從數據庫加載并解析,因為流程定義的元素沒有轉化成數據庫表來完成,當然流程元素解析后是放在緩存中的,具體的還需要后面詳細研究。

    l??????? 流程定義中的java類文件不保存在數據庫里?。

    l??????? 組織機構的管理相對較弱,如果要納入單點登錄體系內還需要改造完成,具體改造方法有待研究。

    l??????? 運行時對象的執行與數據庫記錄之間的關系需要繼續研究

    l??????? 歷史數據的保存及作用需要繼續研究。

    ?

    ?

    ?

    Activiti使用Mybatis3做持久化工作,可以在配置中設置流程引擎啟動時創建表。

    Activiti使用到的表都是ACT_開頭的。

    ACT_RE_*:流程定義存儲。

    ACT_RU_*:流程執行記錄,記錄流程啟動到結束的所有動作,流程結束后會清除相關記錄。

    ACT_ID_*:用戶記錄,流程中使用到的用戶和組。

    ACT_HI_*:流程執行的歷史記錄。

    ACT_GE_*:通用數據及設置。

    使用到的表:

    ACT_GE_BYTEARRAY:流程部署的數據。

    ACT_GE_PROPERTY:通用設置。

    ACT_HI_ACTINST:流程活動的實例。

    ACT_HI_ATTACHMENT:

    ACT_HI_COMMENT:

    ACT_HI_DETAIL:

    ACT_HI_PROCINST:流程實例。

    ACT_HI_TASKINST:任務實例。

    ACT_ID_GROUP:用戶組。

    ACT_ID_INFO:

    ACT_ID_MEMBERSHIP:

    ACT_ID_USER:用戶。

    ACT_RE_DEPLOYMENT:部署記錄。

    ACT_RE_PROCDEF:流程定義。

    ACT_RU_EXECUTION:流程執行記錄。

    ACT_RU_IDENTITYLINK:

    ACT_RU_JOB:

    ACT_RU_TASK:執行的任務記錄。

    ACT_RU_VARIABLE:執行中的變量記錄。

    ?

    ?

    activiti-administrator

    自帶的用戶管理系統,維護用戶和組,需要配置數據連接參數,在activiti-administrator\WEB-INF\applicationContext.xml中,并加入JDBC驅動包。

    activiti-cycle

    PVM活動檢測的,由activiti-rest提供服務,不需配置。

    activiti-explorer

    可以查看用戶任務和啟動流程,由activiti-rest提供服務,不需配置。

    activiti-kickstart

    簡單的點對點流程定義維護工具,需要配置數據連接,把activiti.cfg.xml文件放在classes下,并加入驅動包。

    activiti-modeler

    在線編輯和維護流程定義的工具,最后以文件夾方式部署,需要配置activiti-modeler\WEB-INF\classes\configuration.properties文件。

    activiti-probe

    PVM的觀測服務,由activiti-rest提供服務,不需配置,可以查看deployment、processdefinition、processinstance、database。

    activiti-rest

    其他幾個應用的服務提供者,需要配置數據連接,把activiti.cfg.xml文件放在classes下,并加入驅動包。

    ?

    轉載于:https://www.cnblogs.com/wudi521/p/5363546.html

    總結

    以上是生活随笔為你收集整理的Activiti学习(二)数据表结构的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。