jBPM用数据库来存放定义好的流程文件和执行过程中的所用信息, 没有什么可说的, 在正式运行jBPM前我们得把jBPM所用表部署到数据库中.
本系列博客中所用数据库为MySql, 由于jBPM采用hibernate来做持久层处理,别的数据库跟MySql类似.
当然我们得先create一个database,这里在MySQL中新建一个名为"jBPM"的database.
一般来说, 有三种方式来往数据库里部署所用表. 以下是相应总结:
1, 手工部署. 顾名思义, 手工部署是指,手动地把所需表的sql脚本通过source命令(在MySQL)生成到数据库中.
在说具体步骤之前, 先来看为什么要这么做. 应该说在正式工作中很少有必要这么建表. 不过考虑到这样的手工建表有以下几个好处, 于是在开始阶段最好还是能体会下手工建表的步骤:
- 有助于帮助我们从表间关系层面来理解jBPM的重要组件. 不用多说, 这些表是我们研究jBPM的第一手资料. 这里顺便说下, 当时不知道jBPM里可以看到现成的表生成语句,我用了一种非常规手段"截"下来建表语句.
- 以此为实例来看Hibernate是怎么来生成建表语句的.应该说, 工作中很少用到Hibernate生成建表语句的功能,但心里一直想看下, 这里倒是提供了一个机会.
- 以此机会来体验研究下ant脚本. 由于jBPM大量地用到了ant,这里通过这么一相对简单的实例可以提前热热身.
- 最后一个相对实际一点的原因, 当时费了不少事,搞明白了,若不记下来,过段时间后就忘了.
好了, 有了上面的思想准备, 我们下面来说手工建表的具体步骤:
- 利用ant命令生成相应建表语句. 起始时, jBPM并没有给每一个常用数据库生成建表语句, 我们得用ant命令自己生成. 这里以MySQL为例来说明.
- 修改JBPM_HOME/jbpm-db下的build.properties文件中的jbpm.3.location,使其指向"../jbpm", 即jbpm.3.location=../jbpm
- 确
保在是jBPM(三)
中提到的那个MockConnection已经实现了Connection接口下的方法.否则运行ant命令时会报错.这个文件在
JBPM_HOME\jbpm\src\java.jbpm.test\org\jbpm\persistence\db下.
- 在JBPM_HOME/jbpm-db目录下运行"ant mysql.scripts"命令. 这时还会报错. 报错大意为"请使用 -source 5或更高版本以启用泛型",
原来是ant默认是运行JDK1.4来运行. 而MockConnection里加了泛型. 但怎么来让ant以JDK1.5来运行呢?
直接在"ant mysql.scripts"命令后加" -source 5"不行. 先不管这个了,
把那个泛型<T>去掉.这样再执行ant mysql.scripts就成功了.
这样我们去JBPM_HOME\jbpm-db\build\mysql\scripts目录下,就能看到刚刚生成的建表语句.
- 启
动MySQL,利用"use database jBPM"命令进入上面新建的database中, 执行source
JBPM_HOME\jbpm-db\build\mysql\scripts\mysql.create.sql. 唰唰唰一段时间后,
通过"show tables"我们看到一共有33个表生成了. 大功告成!
这篇中写了不少了, 下篇将介绍后两种: 如何利用ant命令来自动建表,通过Java代码自动建表.
分享到:
相关推荐
1 流程配置类数据库表: 2 1.1 JBPM_PROCESSDEFINITION:流程模版表 2 1.2 JBPM_NODE:流程节点表 2 1.3 JBPM_TRANSITION:流程迁移表 3 1.4 JBPM_ACTION:流程动作表 4 1.5 JBPM_EVENT:流程事件表 5 1.6 JBPM_...
JBPM数据库表说明 2 1 流程配置类数据库表: 2 1.1 JBPM_PROCESSDEFINITION:流程模版表 2 1.2 JBPM_NODE:流程节点表 2 1.3 JBPM_TRANSITION:流程迁移表 3 1.4 JBPM_ACTION:流程动作表 4 1.5 JBPM_EVENT:...
3、所用到的表: 4 3.1资源库与运行时表结构: 4 3.2历史数据表 4 3.3身份认证表结构 4 4、数据库逻辑关系: 5 4.1 资源库与运行时的表: 5 4.2 历史数据表: 6 5、表结构: 7 5.1表JBPM4_DEPLOYMENT 7 5.2 表JBPM4_...
jbpm jbpm4.3.jar DDDDDDDD
jbpm 数据库jbpm 数据库jbpm 数据库jbpm 数据库jbpm 数据库
jbpm创建数据库jbpm创建数据库jbpm创建数据库jbpm创建数据库jbpm创建数据库jbpm创建数据库jbpm创建数据库jbpm创建数据库jbpm创建数据库
jbpm3.2表说明 很详细 1.1 JBPM_PROCESSDEFINITION:流程模版表 关系表 外键存在表 外键名称 外键存在表字段 存在原因 可能 关系 JBPM_NODE JBPM_NODE FK_PROCST_SBPRCDEF SUBPROCESSDEFINITION_ 子流程的...
jbpm数据库表介绍,击杀跑了jbpm4.4所使用的数据库表关系 字段 作用
JBPM采购申请系统——05_构建JBPM数据库.7z JBPM采购申请系统——05_构建JBPM数据库.7z JBPM采购申请系统——05_构建JBPM数据库.7z JBPM采购申请系统——05_构建JBPM数据库.7z JBPM采购申请系统——05_构建JBPM...
1 ACTIVITI数据库表结构 2 1.1 数据库表名说明 2 1.2 数据库表结构 3 1.2.1 Activiti数据表清单: 3 1.2.2 表名:ACT_GE_BYTEARRAY (通用的流程定义和流程资源) 3 1.2.3 表名:ACT_GE_PROPERTY (系统相关属性) 4 ...
jbpm4.4_sql_server_数据库创建
JBPM数据库表说明.对于jbpm中各个表的机构和作用进行详细解释。
JBPM数据库表说明,有很多张表的详细介绍,想要学习jbpm必看
jbpm部署到mysql的数据库变更
jBPM开发:配置EclipseIDE开发环境.pdf
深入学习jbpm的资料,可以从最基础的数据库表结构开始
jbpm数据结构及其数据库表的详细字段,以及jbpm的Id的产生原理
jBPM开发:配置EclipseIDE开发环境参考.pdf
jbpm数据库系统表结构明细,详细说明jbpm的系统的表的功能。各表之间的关系。
JBPM数据库表创建\jbpm.jpdl.oracle.sqlJBPM数据库表创建\jbpm.jpdl.oracle.sqlJBPM数据库表创建\jbpm.jpdl.oracle.sqlJBPM数据库表创建\jbpm.jpdl.oracle.sqlJBPM数据库表创建\jbpm.jpdl.oracle.sql