JBPM数据库表说明

http://blog.163.com/[email protected]/blog/static/167675665201072642627400/

最近这几天一直在研究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

   
时间: 2024-11-04 12:08:21

JBPM数据库表说明的相关文章

jbpm数据库表

#部署对象和流程定义相关的表 SELECT * FROM jbpm4_deployment;#部署对象表 SELECT *FROM jbpm4_deployprop;#流程定义表 SELECT* FROM jbpm4_lob;#存放资源文件的表<用来存放工作资源文件,包括xxx.jpdl.xml和xxx.png> #流程实例和任务 #Execution 执行对象 # 流程按照流程定义的规则执行一次操作就是执行对象 #ProcessInstance 流程实例 #流程按照流程定义的规则执行一次操作

JBPM工作流(二)——数据库表说明

以下为JBMP的数据库说明(18张): 1 流程配置类数据库表: 1.1 JBPM_PROCESSDEFINITION:流程模版表 字段名 字段含义 主键 外键 ID_ 流程模版标识 √ × NAME_ 流程模版名称 × × VERSION_ 流程模版版本,对于同一流程模版,多次插入数据库时,数据库中有多条记录,每条记录中的版本号一次增加 × × ISTERMINATIONIMPLICIT_ 是否支持强行终止流程(目前理解) × × STARTSTATE_ 起始节点ID,在JBPM_NODE表中

jbpm的表结构以及六大服务

对于jbpm的开发,你应该具备的基本知识是对于表结构的理解,以及对于API的熟悉,下面我就带大家总结一下这两方面的知识: 一.jbpm表结构介绍  1.资源库和运行时表结构(10张表)     JBPM4_DEPLOYMENT,JBPM4_DEPLOYPROP,JBPM4_LOB 存储流程定义相关的部署信息 .     JBPM4_EXECUTION主要是存放JBPM4的执行信息,Execution机制代替了JBPM3的Token机制 .     JBPM4_TASK存放需要人来完成的Activ

PowerDesigner生成数据库表和逆向生成表结构(MySQL数据库)

一.Download Connector/ODBC下载ODBC驱动,地址:https://dev.mysql.com/downloads/connector/odbc/, 需要注意:PowerDesigner安装的多少位就下载多少位的,一般是32位,建议下载.msi文件直接安装. 二.安装完成后点击powerdesigner的Database--->Configure Connections...--->添加数据源配置,如下图: 三.PDM模型生成数据库sql文件,点击powerdesigne

数据类与生成数据库表所需组成

Entityframework属于ORM框架,作用为:将数据类与数据库表关联起来. 数据类与生成数据库表所需组成: 普通类(实体类):定义了属性字段+限制 数据上下文类:继承了DbContext,(各实体类的集合).作用:生成数据库和操作数据库. 配置文件中.连接数据库的字符串.注意name必须与数据上下文类的派生类名称相同. 控制器中,数据库上下文类的实例化,然后使用给对象方可生成数据库.

查看和改动MySQL数据库表存储引擎

要做一名合格的程序猿,除了把代码写的美丽外,熟知数据库方面的知识也是不可或缺的.以下总结一下怎样查看和改动MySQL数据库表存储引擎:        1.查看数据库所能支持的存储引擎:show engines;        2.查看某个数据库中某个表所使用的存储引擎:show table status from db_name where name='table_name';(注:将where条件去掉后能够查看某个数据库中全部表的存储引擎情况)        3.改动表引擎方法:alter t

在线数据库表(sql语句)生成java实体类工具

相信每个做java开发的读者,都接触过SQL建表语句,尤其是在项目开发初期,因为数据库是项目的基石. 在现代项目开发中,出现了许多ORM框架,通过简单的实体映射,即可实现与数据库的交互,然而我们最初设计的一定是数据库表结构,而不是实体类.实体类仅仅是对底层数据结构的有损压缩,它仅仅是数据载体,不具备数据归档能力. 因此,很多时候,我们需要将原始的SQL建表语句转换成java实体类,这项工作看似简单,但若人工完成,工作量也是相当可观的,而且难免会出现差错. 到目前为止,笔者还没有发现比较靠谱的此类

mysql 数据库表错误 修复 总结

mysql 数据库坏表修复 萝卜白菜,各有所爱,能干活.能修复表才是王道!!! 修复之前谨记:先备份数据库 (备份完成后再进行以下修复操作) 可以mysqldump -A  > all.sql   进行全库备份  (mysqldump导出错误的时候可以省略错误的表进行导出其他的数据添加选项   --ignore-table=table_name  )  也可以进入到/usr/local/shell/ 执行  mysql_backup.sh进行备份数据库  以上两种方式都不可以备份 可以进入到/d

ORM 实现数据库表的增删改查

这次通过反射技术来实现一下数据库表的增删改查对象关系映射(英语:Object Relational Mapping,简称ORM,或O/RM,或O/R mapping) 注:引用时约束了以下几点: 数据库表的表名与类的类名一致 数据库字段名和类字段名一致 自增字段的访问权限为private其余字段都为public 注:如果用的是MySql数据库,有提供好的MySqlhelper非MySql数据库可以参考我写好的SqlHelper SqlHelper参考位置:http://www.cnblogs.c