JBPM4 经常使用表结构及其说明
首先我想说。这不一篇原创博文。
这里设置成原创。主要是为了分享,由于它对于jbpm的刚開始学习的人,真的值得一看。原作者的博文地址并没有查到,我是在还有一位转载此文的博主那儿获得的。地址在这儿。
本文从表结构、操作时表的变化以及jbpm4.4各个包的作用来介绍jbpm的。
审批结束
Ø jbpm4_hist_actinst (活动节点实例表):新增一条记录
提供使用ant公布流程,辅助启动jboss的任务。
org.jbpm.pvm.internal.builder
用来构造各种模型。包含活动,活动行为。事件,事件处理器,流程定义。变量。任务。等等。
org.jbpm.pvm.internal.cal
提供日历,包含日期。时间段,持续时间,节假日。
org.jbpm.pvm.internal.cfg
JbpmConfiguration和SpringConfiguration实现了org.jbpm.api.Configuration。用来从配置文件构造ProcessEngine
org.jbpm.pvm.internal.xml
主要用于解析xml的,主要解析jbpm.cfg.xml和流程定义文件
org.jbpm.pvm.internal.util
包括经常使用工具
org.jbpm.pvm.internal.wire
用来在ioc里进行依赖绑定。子包包括binding, descriptor, operation和xml,并且默认的绑定方式是使用field。而不是常见的setter绑定方式。
org.jbpm.pvm.internal.type
用来进行类型转换,主要是载入jbpm.cfg.xml对流程引擎进行初始化时。还有就是公布流程的时候进行类型转换。子包包含converter。matcher和variable,类型转换器,类型匹配器和变量。
org.jbpm.pvm.internal.tx
当中负责处理事务,JtaTransaction啦,SpringTransationInterceptor 啦,StandardTransaction啦,这些须要依据实际环境详细选择。jta的实现部分已经单独放到子包jta中了。希望spring中的事务也能这样处理就好了。
org.jbpm.pvm.internal.test
包下放了一个JobTestHelper,显然是能够帮助在測试环境下执行job的,。
org.jbpm.api.client
这部分包括ClientExecution, ClientProcessDefinition, ClientProcessInstance。ClientExecution继承了OpenExecution,声明了end(), signal(), suspend(), resume()之类的方法。
ClientProcessDefintion继承了OpenProcessDefintion,当中的功能主要是 createProcessInstance和startProcessInstance。
org.jbpm.pvm.internal.cmd
包括Command和CommandService,这是命令设计模式的基础。
当中放着全部的命令,全部的流程操作都能够在这里找到。
org.jbpm.pvm.internal.email
以下有两个子包impl和spi。仅仅要注意spi下的AddressResolver, MailProducer和MailSession就能够实现自己定义的实现了。
org.jbpm.pvm.internal.env
包括Context, Environment, EnvironmentFactory, Transaction, WireObject。当中Context, Environment和EnvironmentFactory组成了jBPM4里的IoC系统。Transaction定义了通用事务。 WireObject用来做依赖绑定。以下保存着环境有关的实现类。包括Authentication权限认证。Environment与context 相关的各个类。
org.jbpm.pvm.internal.hibernate
以下的类是专门与hibernate进行交互的类,包括类型转换。命名策略和最基本的DbSessionImpl。全部与数据库的操作都来源于此。
org.jbpm.pvm.internal.history
以下是历史操作所须要的部分。其下还包括events和model包。
org.jbpm.pvm.internal.identity
包主要负责身份认证的操作。包括三个子包cmd, impl和spi。cmd下定义所用到的命令,impl下是实现类。spi下放着IdentitySession。
org.jbpm.pvm.internal.jms
包含JmsMessageSession和JmsMessageUtil,应该是用来处理jms的,JmsMessageSession与 org.jbpm.api.job.Message相关联。
说明job下的Message是依靠jms发送异步消息的。
org.jbpm.pvm.internal.job
提供了对job, message和timer的实现
org.jbpm.pvm.internal.jobexecutor
提供了任务运行器。包含JobExecutorServlet和相应的线程池。以及一系列的命令和处理器。不管是job, message或是timer,终于都会被这里运行。
org.jbpm.pvm.internal.lob
主要用来处理流程公布时的文件内容,须要把jpdl.xml文件和图片,甚至是以后可能把class文件都以附件形式保存到数据库中,以备后用
org.jbpm.pvm.internal.model
这个模型包中包括了非常多非常多类。包括Activity, CompositeElement, Condition, ObservableElement, OpenProcessDefinitionTransition。
简单分类一下。最底层的是ObservableElement,它是能够被事件监听的元素,而且能够继承,CompositeElement继承了 ObservableElement,它里面能够装填多个活动。再加上Event中定义了多个事件,这些就构成了最主要的事件模型。
Activity和 ActivityCoordinates分别定义了活动类和活动位置。以这些为基础。OpenProcessDefinition继承了
ProcessDefinition和CompositeElement。
终于,我们另一个Condition类,它仅仅有一个evaluate方法,接受OpenExecution作为參数返回boolean值。Condition和Activity组合成了Transition。这个转移包括了起点。终点,以及条件推断。最庞大的模型部分,活动,转移,流程定义,流程实例的实现类都放在这里。
在它的op子包中包括的是流程进行中的各项操作。
org.jbpm.pvm.internal.query
History, Job, ProcessDefintion, ProcessInstance这四个query类的实现,还提供了一个Page类,可是当中仅仅有firstResult和maxResults,所以没啥大用
org.jbpm.pvm.internal.repository
负责的是流程的公布。主要有Deployment和Repository相应的service, session和cache。这里使用的缓存,所以每次使用流程定义的时候能够利用缓存提高效率。
org.jbpm.pvm.internal.script
包括对脚本的支持,默认支持了JuelScriptEngine。
org.jbpm.pvm.internal.session
支持各种会话,DbSession, MessageSession, RepositorySession和TimerSession。
org.jbpm.pvm.internal.spring
仅仅有一个CommandTransactionCallback用来实现从spring中获得事务,并用其运行jbpm中定义的各种命令
org.jbpm.pvm.internal.stream
用于从各种途径读取资源。不管是jbpm配置文件和流程资源都要通过这些来转换成流的形式,以供给jbpm处理。
org.jbpm.pvm.internal.svc
当中svc也许是service的缩写。这个包中除了包含org.jbpm.api包下定义的全部service接口的实现,还包含commandService的实现和认证拦截器。
org.jbpm.pvm.internal.task
代表了全部与任务,任务參与者相关的信息,包含Assignable, AssignmentHandler, OpenTask, Participation, Swimlane, Task, TaskDefinition。简单划分后,主要有任务,任务定义任务处理。剩下的都是与任务分配有关了。TaskDefinition从字面上来看是指任务定义,里边仅仅有一个getName()。
Task中保存了任务相关的一些内容,OpenTask主要用来处理历史事件。參与者部分基本分成三个部分,以Assignable和AssignmentHandler组成的自己定义分配部分。Participation參与者和swimlane泳道。临时没有发现三者之间与任务的联系
审批结束
Ø jbpm4_hist_actinst (活动节点实例表):新增一条记录
jbpm4.4最核心的包
1.antlr.jar
2.commons-collections.jar
3.commons-logging.jar
4.dom4j.jar
5.hibernate-core.jar
6.javassist.jar
7.jbpm.jar
8.jta.jar
9.mail.jar
10.slf4j-api.jar
11.slf4j-jdk14.jar
12.slf4j-log4j12.jar
配置文件
jbpm.execution.hbm.xml, jbpm.history.hbm.xml, jbpm.identity.hbm.xml, jbpm.repository.hbm.xml, jbpm.task.hbm.xml五个hibernate映射文件
jbpm.default.cfg.xml ----> 流程引擎的默认配置文件
jbpm.identity.cfg.xml ----> 身份验证配置文件
jbpm.jbossremote.cfg.xml ----> 远程调用jboss实现命令模式
jbpm.jobexecutor.cfg.xml ----> 任务运行器的配置
jbpm.task.lifecycle.xml ----> 任务生命周期,包含启动。暂停,继续,完毕。取消之类
jbpm.tx.hibernate.cfg.xml----> 默认的hibernate事务配置
jbpm.tx.jta.cfg.xml ----> jta的事务配置
jbpm.variable.types.xml ----> 配置变量类型映射
jbpm.wire.bindings.xml ----> 依赖绑定映射
jbpm4.4包作用
org.jbpm.pvm.internal.ant
提供使用ant公布流程,辅助启动jboss的任务。
org.jbpm.pvm.internal.builder
用来构造各种模型,包含活动,活动行为,事件。事件处理器,流程定义,变量。任务,等等。
org.jbpm.pvm.internal.cal
提供日历。包含日期。时间段,持续时间,节假日。
org.jbpm.pvm.internal.cfg
JbpmConfiguration和SpringConfiguration实现了org.jbpm.api.Configuration,用来从配置文件构造ProcessEngine
org.jbpm.pvm.internal.xml
主要用于解析xml的,主要解析jbpm.cfg.xml和流程定义文件
org.jbpm.pvm.internal.util
包括经常使用工具
org.jbpm.pvm.internal.wire
用来在ioc里进行依赖绑定。子包包括binding, descriptor, operation和xml,并且默认的绑定方式是使用field。而不是常见的setter绑定方式。
org.jbpm.pvm.internal.type
用来进行类型转换,主要是载入jbpm.cfg.xml对流程引擎进行初始化时。还有就是公布流程的时候进行类型转换。子包包含converter,matcher和variable,类型转换器,类型匹配器和变量。
org.jbpm.pvm.internal.tx
当中负责处理事务,JtaTransaction啦,SpringTransationInterceptor 啦。StandardTransaction啦,这些须要依据实际环境详细选择。
jta的实现部分已经单独放到子包jta中了。
希望spring中的事务也能这样处理就好了。
org.jbpm.pvm.internal.test
包下放了一个JobTestHelper,显然是能够帮助在測试环境下执行job的,。
org.jbpm.api.client
这部分包括ClientExecution, ClientProcessDefinition, ClientProcessInstance。ClientExecution继承了OpenExecution,声明了end(), signal(), suspend(), resume()之类的方法。ClientProcessDefintion继承了OpenProcessDefintion,当中的功能主要是 createProcessInstance和startProcessInstance。
org.jbpm.pvm.internal.cmd
包括Command和CommandService。这是命令设计模式的基础。当中放着全部的命令,全部的流程操作都能够在这里找到。
org.jbpm.pvm.internal.email
以下有两个子包impl和spi,仅仅要注意spi下的AddressResolver, MailProducer和MailSession就能够实现自己定义的实现了。
org.jbpm.pvm.internal.env
包括Context, Environment, EnvironmentFactory, Transaction, WireObject。
当中Context, Environment和EnvironmentFactory组成了jBPM4里的IoC系统。
Transaction定义了通用事务。
WireObject用来做依赖绑定。以下保存着环境有关的实现类。
包括Authentication权限认证,Environment与context 相关的各个类。
org.jbpm.pvm.internal.hibernate
以下的类是专门与hibernate进行交互的类,包括类型转换,命名策略和最基本的DbSessionImpl,全部与数据库的操作都来源于此。
org.jbpm.pvm.internal.history
以下是历史操作所须要的部分。其下还包括events和model包。
org.jbpm.pvm.internal.identity
包主要负责身份认证的操作。包括三个子包cmd, impl和spi,cmd下定义所用到的命令,impl下是实现类,spi下放着IdentitySession。
org.jbpm.pvm.internal.jms
包含JmsMessageSession和JmsMessageUtil,应该是用来处理jms的。JmsMessageSession与 org.jbpm.api.job.Message相关联。
说明job下的Message是依靠jms发送异步消息的。
org.jbpm.pvm.internal.job
提供了对job, message和timer的实现
org.jbpm.pvm.internal.jobexecutor
提供了任务运行器。包含JobExecutorServlet和相应的线程池。以及一系列的命令和处理器。不管是job, message或是timer,终于都会被这里运行。
org.jbpm.pvm.internal.lob
主要用来处理流程公布时的文件内容,须要把jpdl.xml文件和图片,甚至是以后可能把class文件都以附件形式保存到数据库中。以备后用
org.jbpm.pvm.internal.model
这个模型包中包括了非常多非常多类,包括Activity, CompositeElement, Condition, ObservableElement, OpenProcessDefinitionTransition。
简单分类一下。
最底层的是ObservableElement,它是能够被事件监听的元素,而且能够继承。CompositeElement继承了 ObservableElement,它里面能够装填多个活动。再加上Event中定义了多个事件,这些就构成了最主要的事件模型。Activity和 ActivityCoordinates分别定义了活动类和活动位置。以这些为基础。OpenProcessDefinition继承了
ProcessDefinition和CompositeElement。终于,我们另一个Condition类。它仅仅有一个evaluate方法。接受OpenExecution作为參数返回boolean值,Condition和Activity组合成了Transition,这个转移包括了起点,终点,以及条件推断。最庞大的模型部分,活动,转移,流程定义。流程实例的实现类都放在这里。在它的op子包中包括的是流程进行中的各项操作。
org.jbpm.pvm.internal.query
History, Job, ProcessDefintion, ProcessInstance这四个query类的实现,还提供了一个Page类,可是当中仅仅有firstResult和maxResults。所以没啥大用
org.jbpm.pvm.internal.repository
负责的是流程的公布,主要有Deployment和Repository相应的service, session和cache,这里使用的缓存,所以每次使用流程定义的时候能够利用缓存提高效率。
org.jbpm.pvm.internal.script
包括对脚本的支持,默认支持了JuelScriptEngine。
org.jbpm.pvm.internal.session
支持各种会话,DbSession, MessageSession, RepositorySession和TimerSession。
org.jbpm.pvm.internal.spring
仅仅有一个CommandTransactionCallback用来实现从spring中获得事务,并用其运行jbpm中定义的各种命令
org.jbpm.pvm.internal.stream
用于从各种途径读取资源。不管是jbpm配置文件和流程资源都要通过这些来转换成流的形式,以供给jbpm处理。
org.jbpm.pvm.internal.svc
当中svc也许是service的缩写。这个包中除了包含org.jbpm.api包下定义的全部service接口的实现,还包含commandService的实现和认证拦截器。
org.jbpm.pvm.internal.task
代表了全部与任务,任务參与者相关的信息。包含Assignable, AssignmentHandler, OpenTask, Participation, Swimlane, Task, TaskDefinition。简单划分后,主要有任务,任务定义任务处理。剩下的都是与任务分配有关了。TaskDefinition从字面上来看是指任务定义。里边仅仅有一个getName()。Task中保存了任务相关的一些内容。OpenTask主要用来处理历史事件。參与者部分基本分成三个部分。以Assignable和AssignmentHandler组成的自己定义分配部分,Participation參与者和swimlane泳道。临时没有发现三者之间与任务的联系
JBPM4 经常使用表结构及其说明的更多相关文章
- JBPM4 常用表结构
JBPM4 常用表结构 第一部分:表结构说明 Jbpm4 共有18张表,如下,其中红色的表为经常使用的表 一:资源库与运行时表结构 1. JBPM4_DEPLOYMENT 流程定义表 2. J ...
- JBPM4 常用表结构及其说明
本文从表结构.操作时表的变化以及jbpm4.4各个包的作用来介绍jbpm的. 第一部分:表结构说明 Jbpm4 共有18张表,如下,其中红色的表为经常使用的表 一:资源库与运行时表结构 1. J ...
- JBPM4常用表结构及入门流程
JBPM4 常用表结构 第一部分:表结构说明 Jbpm4 共有18张表,如下,其中红色的表为经常使用的表 一:资源库与运行时表结构 1. JBPM4_DEPLOYMENT 流程定义表 2. J ...
- jbpm4.3表结构和表字段说明
整体说明: JBPM4_DEPLOYMENT 流程定义表JBPM4_DEPLOYPROP 流程定义属性表 JBPM4_EXECUTION 流程实例表JBPM4_HIST_ACTINST 流程活动 ...
- ABAP Enhancement:第二部分
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- 转载: ABAP动态内表操作
顾名思义,动态表的列是可以根据数据的变化而变化的,会使报表显示更简洁漂亮. 以下是实现方法. ------------------------------------------- 1, 创建动态内表 ...
- MySQL备份与复制
1.二进制日志 二进制日志记录了数据库的所有改变,使得任何slave都可以执行相同的更新.一般来说,开启二进制日志大概会有1%的性能损耗,它有两个重要的使用场景: (1)备份:在某个时间点t作了一次备 ...
- Oracle数据库之FORALL与BULK COLLECT语句
Oracle数据库之FORALL与BULK COLLECT语句 我们再来看一下PL/SQL块的执行过程:当PL/SQL运行时引擎处理一块代码时,它使用PL/SQL引擎来执行过程化的代码,而将SQL语句 ...
- Sql Server存储过程和函数浅谈
今天给大家总结一下sql server中的存储过程和函数.本人是小白,里面内容比较初级,大神不喜勿喷 自行飘过就是.. 首先给大家简单列出sql server中的流控制语句,后面会用到的^_^ sql ...
随机推荐
- post请求乱码
jsp页面中 <meta http-equiv="content-type" content="text/html; charset=UTF-8"& ...
- CRC文件解压缩问题
CRC问题一般有三种可能1.你的硬盘出现坏道2.你的硬盘数据线受损3.还可能是主板和内存的问题 硬盘坏道的表现硬盘使用久了就可能出现各种各样的问题,而硬盘“坏道”便是这其中最常见的问题.硬盘出现坏道除 ...
- hibernate中一些属性对操作的影响
1 inverse,在一对多中使用,表示是否有关联关系控制权.对于保存.删除数据有影响. 2 cascade,表示级联操作 save-update 表示级联保存和更新 delete 表示级联删除 al ...
- [原]SQL相关路径查询脚本
--1.查询机器名 SELECT @@servername AS 机器名称 --查询已安装的SQL实例名 SELECT * FROM Sys.Servers --2.查询SQL安装路径 DECLARE ...
- 点滴积累【JS】---JS实现动画闪烁效果
效果: 思路:首先获得图片数组,然后做JS定时用setTimeout和setInterval在用显示隐藏实现闪烁效果. 代码: <!DOCTYPE html PUBLIC "-//W3 ...
- Atitit.编程语言的主要的种类and趋势 逻辑式语言..函数式语言...命令式语言
Atitit.编程语言的主要的种类and趋势 逻辑式语言..函数式语言...命令式语言 1. 编程语言的主要的种类 逻辑式语言..函数式语言...命令式语言 1 2. 逻辑式语言,,不必考虑实现过程而 ...
- Atitit. Java script 多重多重catch语句的实现and Javascript js 异常机制
Atitit. Java script 多重多重catch语句的实现and Javascript js 异常机制 1. 语法错误(ERROR)和运行期错误(Exception) 1 2. 错误类型判断 ...
- Atitit.软件gui按钮and面板---os区-----linux windows搜索文件 文件夹
Atitit.软件gui按钮and面板---os区-----搜索文件 1. Find 1 2. 寻找目录 1 3. 2. Locate// everything 1 4. 3. Whereis (wi ...
- phan—php语法静态检查在windows下的配置
php7推出了语法树,于是静态语法分析更方便了.(可以直接下载我配置好的,传送门百度网盘) 1.先安装php7,到http://windows.php.net/下载php7带openssl的. 2.修 ...
- 浏览器中F5和CTRL F5的行为区别
前言 在印象中,浏览器中的F5和刷新按钮是一样的效果,都是对当前页面进行刷新:Ctrl-F5的行为也是刷新页面,但是会清除浏览器缓存,这在前端调试时候会常用.二者真正的区别是什么呢?在stackove ...