http://blog.163.com/tigerlion@126/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

   
 
 
 
 
 

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

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

    以下为JBMP的数据库说明(18张): 1 流程配置类数据库表: 1.1 JBPM_PROCESSDEFINITION:流程模版表 字段名 字段含义 主键 外键 ID_ 流程模版标识 √ × NAME ...

  2. 开源流程引擎Camunda BPM如何扩展数据库表

    前言 在使用开源流程引擎(如:JBPM.Activiti.Flowable.Camunda等)的时候,经常会遇到这样的需求,我们需要按照业务需求增加一张数据库的表,而且这张表是跟工作流引擎有交互的(注 ...

  3. 绝对干货,教你4分钟插入1000万条数据到mysql数据库表,快快进来

    我用到的数据库为,mysql数据库5.7版本的 1.首先自己准备好数据库表 其实我在插入1000万条数据的时候遇到了一些问题,现在先来解决他们,一开始我插入100万条数据时候报错,控制台的信息如下: ...

  4. 数据库表结构设计方法及原则(li)

    数据库设计的三大范式:为了建立冗余较小.结构合理的数据库,设计数据库时必须遵循一定的规则.在关系型数据库中这种规则就称为范式.范式是符合某一种设计要求的总结.要想设计一个结构合理的关系型数据库,必须满 ...

  5. 对于多个数据库表对应一个Model问题的思考

    最近做项目遇到一个场景,就是客户要求为其下属的每一个分支机构建一个表存储相关数据,而这些表的结构都是一样的,只是分属于不同的机构.这个问题抽象一下就是多个数据库表对应一个Model(或者叫实体类).有 ...

  6. C# .Net :Excel NPOI导入导出操作教程之将Excel文件读取并写到数据库表,示例分享

    using (FileStream fileReader = File.OpenRead(@"C:\Users\Administrator\Desktop\112.xls"))   ...

  7. mysql数据库表的自增主键号不规律,重新排列

    mysql数据库表的自增主键ID乱了,需要重新排序. 原理:删除原有的自增ID,重新建立新的自增ID. 1.删除原有主键: ALTER TABLE `table_name` DROP `id`; 2. ...

  8. 数据库(SQL Server)管理数据库表~新奇之处

    说到“数据库”,我总有一种莫名的感觉,在刚刚接触到的数据库中就让我似懂非懂渡过着,于是思考着.于是在冷静的时空中让我回想到了很多的知识,不知你们是怎样过来的,真心希望我的这篇数据库总结能够让我们都有一 ...

  9. hibernate笔记--通过SchemaExport生成数据库表

    方法比较简单,项目中只需要两个java类(一个实体类,如User,一个工具类),两个配置文件(hibernate必须的两个配置文件hibernate.cfg.xml,与User.hbm.xml),即可 ...

随机推荐

  1. Portlet 通信过程详解

    Portlet 通信过程详解 在 Portal 的开发过程中,Theme 与 portlet 之间的通信,以及 portlet 之间的通信是开发人员常常遇到的问题.通常 Portlet 之间需要能够互 ...

  2. Linux(CentOS)常用命令

    http://fedoranews.org/alex/tutorial/rpm/3.shtml rpm.org rpm -qa|grep mysql 查询已安装的含有mysql的包. mv 移动文件. ...

  3. *[codility]MaxCounters

    http://codility.com/demo/take-sample-test/maxcounters 简单题.注意要记录两个max,一个是最大值,一个是已经生效的最大值. // you can ...

  4. ssh 密钥详解

    ssh 无密码登录要使用公钥与私钥.linux下可以用用ssh-keygen生成公钥/私钥对,下面我以CentOS为例. 有机器A(192.168.1.155),B(192.168.1.181).现想 ...

  5. Android开发之ADT中无Annotation Processin的解决办法

    使用ButterKnife的时候,进入ADT中设置的时候发现在Java Compiler展开后无Annotation Processin 解决办法: 安装插件:Juno - http://downlo ...

  6. Oracle系列之序列

    涉及到表的处理请参看原表结构与数据  Oracle建表插数据等等 语法结构:创建序列 create sequence sequence_name start with num increment by ...

  7. hdu4632Palindrome subsequence

    http://acm.hdu.edu.cn/showproblem.php?pid=4632 TLE了N次 原因居然是取模次数太多了..! 这数据卡的好紧 还是我写的太搓..828ms挤过 s[i]= ...

  8. SQL语句优化方法

    1.1 注释使用 在语句中多写注释,注释不影响SQL语句的执行效率.增加代码的可读性. 1.2 对于事务的使用 尽量使事务处理达到最短,如果事务太长最好按功能将事务分开执行(如:可以让用户在界面上多几 ...

  9. [NYOJ 37] 回文字符串

    回文字符串 时间限制:3000 ms  |  内存限制:65535 KB 难度:4   描述 所谓回文字符串,就是一个字符串,从左到右读和从右到左读是完全一样的,比如"aba".当 ...

  10. 多线程模式之MasterWorker模式

    多线程模式之MasterWorker模式 Master-Worker模式的核心思想是,系统由两类进程协作工作:Master进程和Worker进程.Master进程负责接收和分配任务,Worker进程负 ...