JBPM数据库表详解
发布时间:2021-12-10 12:20:11 所属栏目:教程 来源:互联网
导读:最近这几天一直在研究JBPM工作流引擎,以下为JBMP的数据库说明,貌似不是最新的4.4版本的,不过有胜于无,用来学习JBPM足矣。因为内容太多,分成两篇发。 1 流程配置类数据库表: 1.1 JBPM_PROCESSDEFINITION:流程模版表 字段名 字段含义 主键 外键 ID_ 流
最近这几天一直在研究JBPM工作流引擎,以下为JBMP的数据库说明,貌似不是最新的4.4版本的,不过有胜于无,用来学习JBPM足矣。因为内容太多,分成两篇发。 1 流程配置类数据库表: 1.1 JBPM_PROCESSDEFINITION:流程模版表 字段名 字段含义 主键 外键 ID_ 流程模版标识 √ × NAME_ 流程模版名称 × × VERSION_ 流程模版版本,对于同一流程模版,多次插入数据库时,数据库中有多条记录,每条记录中的版本号一次增加 × × ISTERMINATIONIMPLICIT_ 是否支持强行终止流程(目前理解) × × STARTSTATE_ 起始节点ID,在JBPM_NODE表中 × √ 1.2 JBPM_NODE:流程节点表 字段名 字段含义 主键 外键 ID_ 流程节点标识 √ CLASS_ 节点类型: C: org.jbpm.graph.node.ProcessState D: org.jbpm.graph.node.Decision E: org.jbpm.graph.node.EndState F: org.jbpm.graph.node.Fork J: org.jbpm.graph.node.Join K: org.jbpm.graph.node.TaskNode N: org.jbpm.graph.def.Node R: org.jbpm.graph.node.StartState S: org.jbpm.graph.node.State U: org.jbpm.graph.def.SuperState NAME_ 流程节点名称 SUBPROCESSDEFINITION_ 节点类型为ProcessState时使用,代表子流程模版id √ ISASYNC_ 节点是否支持异步机制 ACTION_ 节点中指定的action,对应JBPM_ACTION表 √ SUPERSTATE_ 节点对应的SuperState的id,表明该节点属于某个SuperState √ PROCESSDEFINITION_ 节点所在的流程模版id √ DECISIONDELEGATION 节点类型为Decision时使用,表明Decision对应的代理类,对应JBPM_DELEGATION表 √ DECISIONEXPRESSION_ 节点类型为Decision时使用,该属性表示Decision中使用的判断表达式 SIGNAL_ 节点类型为Task CREATETASKS_ 节点类型为Task ENDTASKS_ 节点类型为Task NODECOLLECTIONINDEX_ 节点类型为SuperState时使用, 1.3 JBPM_TRANSITION:流程迁移表 字段名 字段含义 主键 外键 ID_ 流程迁移标识 √ NAME_ 流程迁移名称 PROCESSDEFINITION_ 迁移所在的流程模版id √ FROM_ 迁移来源,对应Node的id √ TO_ 迁移目的,对应Node的id √ FROMINDEX_ ? 1.4 JBPM_ACTION:流程动作表 字段名 字段含义 主键 外键 ID_ 流程动作标识 √ NAME_ 流程动作名称 √ CLASS_ 流程动作分类: A(动作): org.jbpm.graph.def.Action S(脚本): org.jbpm.graph.action.Script C(创建定时器): org.jbpm.scheduler.def.CreateTimerAction I(取消定时器): org.jbpm.scheduler.def.CancelTimerAction ISPROPAGATIONALLOWED_ ? ACTIONEXPRESSION_ 动作类行为I时使用,表示动作执行的脚本 ISASYNC_ 动作是否支持异步机制 REFERENCEDACTION_ 动作中引用的动作,对应JBPM_ACTION √ ACTIONDELEGATION_ 动作类型为A时使用,表示动作执行的代理类,对应JBPM_DELEGATION √ EVENT_ 动作中指定的事件,对应JBPM_EVENT PROCESSDEFINITION_ 动作所在的流程模版id √ TIMERNAME_ 定时器名称 DUEDATE_ 定时器间隔时间 REPEAT_ 定时器动作执行次数 TRANSITIONNAME_ 动作指定后指向的Transition TIMERACTION_ 定时器动作代理类,对应JBPM_ACTION EXPRESSION_ 定时器执行表达式 EVENTINDEX_ ? EXCEPTIONHANDLER_ 异常处理类,对应JBPM_EXCEPTIONHANDLER EXCEPTIONHANDLERINDEX_ ? 1.5 JBPM_EVENT:流程事件表 字段名 字段含义 主键 外键 ID_ 流程事件标识 √ EVENTTYPE_ 流程事件类型名称 TYPE_ 流程事件所在的图形节点类型 "A" :Task "C" :ProcessState "D" :Decision" "E" :EndState" "F" :Fork" "J" :Join" "K" :TaskNode" "N" :Node" "P" :ProcessDefinition" "R" :StartState" "S" :State" "T" :Transition" "U" :SuperState" GRAPHELEMENT_ 流程事件所在的图形节点的ID PROCESSDEFINITION_ 流程事件所属流程定义,对应JBPM_PROCESSDEFINITION √ NODE_ 流程事件所属节点,对应JBPM_NODE √ TRANSITION_ 流程事件所属迁移,对应JBPM_ TRANSITION √ TASK_ 流程事件所属任务,对应JBPM_TASK √ 1.6 JBPM_DELEGATION:流程代理类表(用于实例化jbpm中的action类) 字段名 字段含义 主键 外键 ID_ 流程代理标识 √ CLASSNAME_ 流程代理类名称 CONFIGURATION_ 流程代理类配置信息 CONFIGTYPE_ 流程代理类配置类型 PROCESSDEFINITION_ 流程代理类所属流程定义,对应JBPM_PROCESSDEFINITION √ 1.7 JBPM_TASK:流程任务表 字段名 字段含义 主键 外键 ID_ 流程任务标识 √ NAME_ 流程任务名称 PROCESSDEFINITION_ 流程任务所属流程定义,对应JBPM_PROCESSDEFINITION √ DESCRIPTION_ 流程任务描述 ISBLOCKING_ 任务是否为阻塞(任务不完成、流程不能继续) ISSIGNALING_ 任务是否可以驱动TOKEN DUEDATE 任务持续时间,表明任务应在多长时间内完成 ACTORIDEXPRESSION ? POOLEDACTORSEXPRESSION ? TASKMGMTDEFINITION_ 任务所属的任务管理模块ID,对应JBPM_MODULEDEFIFNITION √ TASKNODE_ 任务所属的TASK_NODE,对应JBPM_NODE √ STARTSTATE 任务所属的START_NODE,对应JBPM_NODE √ ASSIGNMENTDELEGATION ? √ SWIMLANE 执行该任务的泳道(角色) √ TASKCONTROLLER_ ? 1.8 JBPM_TASKCONTROLLER:流程任务控制器 字段名 字段含义 主键 外键 ID_ 流程任务控制器标识 √ TASKCONTROLLERDELEGATION_ 流程任务控制器对应的代理,对应JBPM_DELEGATION √ 1.9 JBPM_VARIABLEACCESS:流程变量表 字段名 字段含义 主键 外键 ID_ 流程变量标识 √ VARIABLENAME_ 流程变量名称 ACCESS_ 流程变量存取方式 MAPPEDNAME ?(暂时不使用) PROCESSSTATE 流程变量所属的流程节点,对应JBPM_NODE √ TASKCONTROLLER 流程变量所属的流程任务控制器,对应JBPM_ TASKCONTROLLER √ INDEX_ ? SCRIPT 流程变量所属的ACTION,对应JBPM_ ACTION √ 1.10 JBPM_MODULEDEFINITION:流程模块定义表 字段名 字段含义 主键 外键 ID_ 流程模块标识 √ CLASS_ 流程模块类型: M : org.jbpm.module.def.ModuleDefinition C : org.jbpm.context.def.ContextDefinition F : org.jbpm.file.def.FileDefinition L: org.jbpm.logging.def.LoggingDefinition I: org.jbpm.scheduler.def.SchedulerDefinition T: org.jbpm.taskmgmt.def.TaskMgmtDefinition NAME_ 流程模块名称 PROCESSDEFINITION_ 流程模块所属流程定义,对应JBPM_PROCESSDEFINITION √ STARTTASK 类型为T时使用,对应JBPM_TASK √ 1.11JBPM_EXCEPTIONHANDLER:流程异常处理器表 字段名 字段含义 主键 外键 ID_ 流程异常处理器标识 √ EXCEPTIONHANDLERNAME_ 流程异常处理器名称 TYPE_ 流程异常处理器所在的图形节点类型 "A" :Task "C" :ProcessState "D" :Decision" "E" :EndState" "F" :Fork" "J" :Join" "K" :TaskNode" "N" :Node" "P" :ProcessDefinition" "R" :StartState" "S" :State" "T" :Transition" "U" :SuperState" GRAPHELEMENT_ 流程异常处理器所在的图形节点的ID PROCESSDEFINITION_ 流程异常处理器所属流程定义,对应JBPM_PROCESSDEFINITION √ NODE_ 流程异常处理器所属节点,对应JBPM_NODE √ TRANSITION_ 流程异常处理器所属迁移,对应JBPM_ TRANSITION √ TASK_ 流程异常处理器所属任务,对应JBPM_TASK √ GRAPHELEMENTINDEX_ 流程异常处理器中包含的ACTION集合的索引(?) 1.12 JBPM_DECISIONCONDITION:DECISION节点判断条件表 字段名 字段含义 主键 外键 INDEX_ 标识 √ DECISION_ 所属的DECISION,对应JBPM_NODE √ TRANSITIONNAME_ DECISION节点的“离开节点名���” EXPRESSION 每一个“离开节点名称”对应的条件表达式 1.13 JBPM_ SWINLANE:DECISION节点判断条件表 字段名 字段含义 主键 外键 ID_ 标识 √ NAME_ 泳道名称 √ TRANSITIONNAME_ DECISION节点的“离开节点名称” EXPRESSION 每一个“离开节点名称”对应的条件表达式 2 流程运行类数据库表: 2.1 JBPM_PROCESSINSTANCE:流程实例表 字段名 字段含义 主键 外键 ID_ 标识 √ VERSION_ 版本 START_ 流程实例开始时间 END_ 流程实例结束时间 ISSUSPENDED 流程实例是否暂停 PROCESSDEFINITION_ 流程实例所属的流程模版,对应JBPM_PROCESSDEFINITION √ ROOTTOKEN_ 流程实例对应的TOKEN,对应JBPM_TOKEN √ SUPERPROCESSTOKEN_ 父流程的当前TOKEN的ID,当流程实例为子流程实例时使用,表明由父流程进入子流程时,父流程的当前TOKEN。对应JBPM_TOKEN √ 2.2 JBPM_TOKEN:流程TOKEN表 字段名 字段含义 主键 外键 ID_ 标识 √ VERSION_ 版本 START_ TOKEN开始时间 END_ TOKEN结束时间 NODEENTER_ TOKEN进入当前节点(TOKEN当前所处的节点)的时间 NEXTLOGINDEX_ ? ISABLETOREACTIVATEPARENT_ 能否重新激活父TOKEN标志 ISTERMINATIONIMPLICIT_ 能够强制终止TOKEN标志 ISSUSPENDED_ TOKEN是否处于暂停状态 NODE_ TOKEN所在的当前节点,对应JBPM_NODE √ PROCESSINSTANCE_ TOKEN所属的流程实例,对应JBPM_PROCESSINSTANCE √ PARENT_ TOKEN的父TOKEN,当TOKEN是由fock产生或处于子流程中时使用,对应JBPM_TOKEN √ 2.3 JBPM_LOG:流程日志表 字段名 字段含义 主键 外键 ID_ 标识 √ CLASS_ 日志类型: A: ActionLog B: ByteArrayUpdateLog C: CompositeLog D: VariableDeleteLog E: DateUpdateLog F: HibernateStringUpdateLog G: LongUpdateLog H: HibernateLongUpdateLog I: ProcessInstanceCreateLog L: DoubleUpdateLog M: MessageLog N: NodeLog O: TokenCreateLog P: ProcessLog R: VariableCreateLog S: SignalLog T: TransitionLog U: StringUpdateLog V: VariableLog W: VariableUpdateLog X: ProcessInstanceEndLog Y: TokenEndLog 0: TaskLog 1: TaskCreateLog 2: TaskAssignLog 3: TaskEndLog 4: SwimlaneLog 5: SwimlaneCreateLog 6: SwimlaneAssignLog INDEX_ ? DATE_ 日志产生时间 TOKEN _ 日志所属TOKEN PARENT_ 日志的父日志,对应JBPM_LOG CHILD_ 创建的子TOKEN,对应TokenCreateLog 结束的子TOKEN,对应TokenEndLog MESSAGE_ 消息信息,当日志类型为M(MessageLog)时使用 EXCEPTION_ 日志异常信息,对应ActionLog ACTION_ 日志所属ACTION,当日志类型为A(ActionLog)时使用 NODE_ 日志所属NODE,当日志类型为N(NodeLog)时使用 ENTER_ 进入节点时间,对应NodeLog LEAVE_ 离开节点时间,对应NodeLog DURATION_ 节点停留时间,对应NodeLog TRANSITION_ 日志所属TRANSITION SOURCENODE_ TRANSITION的起点,对应TransitionLog DESTINATIONNODE_ TRANSITION的终点,对应TransitionLog VARIABLEINSTANCE_ 日志所属的流程变量实例,对应VariableLog OLDBYTEARRAY_ 原BYTEARRAY值,对应ByteArrayUpdateLog NEWBYTEARRAY 新BYTEARRAY值,对应ByteArrayUpdateLog OLDDATEVALUE 原DATE值,对应DateUpdateLog NEWDATEVALUE 新DATE值,对应DateUpdateLog OLDDOUBLEVALUE_ 原DOUBLE值,对应DoubleUpdateLog NEWDOUBLEVALUE_ 新DOUBLE值,对应DoubleUpdateLog OLDLONGIDCLASS_ 原LONGIDCLASS值,对应HibernateLongUpdateLog NEWLONGIDCLASS_ 新LONGIDCLASS值,对应HibernateLongUpdateLog OLDLONGIDVALUE_ 原LONGID值,对应HibernateLongUpdateLog NEWLONGIDVALUE_ 新LONGID值,对应HibernateLongUpdateLog OLDSTRINGIDCLASS_ 原STRINGIDCLASS值,对应HibernateStringUpdateLog OLDSTRINGIDVALUE_ 原STRINGID值,对应HibernateStringUpdateLog NEWSTRINGIDCLASS_ 新STRINGIDCLASS值,对应HibernateStringUpdateLog NEWSTRINGIDVALUE_ 新STRINGID值,对应HibernateStringUpdateLog OLDLONGVALUE_ 原LONG值,对应LongUpdateLog NEWLONGVALUE_ 新LONG值,对应LongUpdateLog OLDSTRINGVALUE_ 原STRING值,对应StringUpdateLog NEWSTRINGVALUE_ 新STRING值,对应StringUpdateLog TASKINSTANCE_ 日志所属的TASKINSTANCE,对应TaskLog TaskCreateLog TaskAssignLog TaskEndLog TASKACTORID_ 任务的新ACTORID,对应TaskAssignLog TaskCreateLog SwimlaneCreateLog SwimlaneAssignLog TASKOLDACTORID_ 任务的原ACTORID,对应TaskAssignLog SwimlaneAssignLog SWIMLANEINSTANCE_ 日志所属的SWIMLANEINSTANC,对应SwimlaneLog SwimlaneCreateLog SwimlaneAssignLog 2.4 JBPM_RUNTIMEACTION:流程实时ACTION表 字段名 字段含义 主键 外键 ID_ 标识 √ VERSION_ 版本 EVENTTYPE_ 实时ACTION所处的事件类型名称 TYPE_ 实时ACTION所在的图形节点类型 "A" :Task "C" :ProcessState "D" :Decision" "E" :EndState" "F" :Fork" "J" :Join" "K" :TaskNode" "N" :Node" "P" :ProcessDefinition" "R" :StartState" "S" :State" "T" :Transition" "U" :SuperState" GRAPHELEMENT_ 实时ACTION所在的图形节点的ID PROCESSINSTANCE_ 实时ACTION所在的流程实例,对应JBPM_PROCESSINSTANCE ACTION_ 实时ACTION对应的ACTION,对应JBPM_ACTION PROCESSINSTANCEINDEX_ ? 2.5 JBPM_VARIABLEINSTANCE:流程变量实例表 字段名 字段含义 主键 外键 ID_ 标识 CLASS_ 变量类型: V : org.jbpm.context.exe.VariableInstance B : org.jbpm.context.exe.variableinstance.ByteArrayInstance D : org.jbpm.context.exe.variableinstance.DateInstance O : org.jbpm.context.exe.variableinstance.DoubleInstance H : org.jbpm.context.exe.variableinstance.HibernateLongInstance I : org.jbpm.context.exe.variableinstance.HibernateStringInstance L : org.jbpm.context.exe.variableinstance.LongInstance S : org.jbpm.context.exe.variableinstance.StringInstance N : org.jbpm.context.exe.variableinstance.NullInstance NAME_ 变量名称 TYPE_ ? CONVERTER_ 数值转换器 TOKEN_ 变量所在的TOKEN,对应JBPM_TOKEN √ TOKENVARIABLEMAP_ 该变量所属的TOKEN的变量映射,对应JBPM_TOKENVARIABLEMAP √ PROCESSINSTANCEINDEX_ ? PROCESSINSTANCE_ 变量所在的流程实例,对应JBPM_PROCESSINSTANCE √ BYTEARRAYVALUE_ 当流程变量是ByteArray类型时,变量的值,对应JBPM_BYTEARRAY DATEVALUE_ 当流程变量是DATE类型时,变量的值 DOUBLEVALUE_ 当流程变量是DOUBLE类型时,变量的值 LONGIDCLASS_ 当流程变量是了HibernateLongInstance类型时,变量的类型 LONGVALUE_ 当流程变量是了HibernateLongInstance/Long类型时,变量的值 STRINGIDCLASS_ 当流程变量是了HibernateStringInstance类型时,变量的类型 STRINGVALUE_ 当流程变量是了HibernateStringInstance/String类型时,变量的值 TASKINSTANCE_ 变量所在的任务实例,对应JBPM_TASKINSTANCE ![]() (编辑:我爱制作网_潮州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |