初学JBPM工作流引擎笔记

JBPM介绍:JBPM,全称是Java Business Process Management(业务流程管理),它是覆盖了业务流程管理、工作流、服务协作等领域的一个开源的、灵活的、易扩展的可执行流程语言框架。jBPM是公开源代码项目,它使用要遵循 Apache License。它使用Hibernate来管理它的数据库。Hibernate是目前Java领域最好的一种数据存储层解决方案,只要是 Hibernate 支持的数据库,BPM 也就支持。

JBPM目的:定义流程和执行流程。

ProcessDefinition:流程定义,流程规则定义,请假流程 、财务审批流程等等。

Node:节点  Transition :线,根线连接着两个节点  from有多个LeavingTransition  To有多个ArrivingTransitions

StartState:起点  EndState:终点     起点和终点是一种位状态节点,起点不允许有LeavingTransition,点不允许有ArrivingTransitions。在JBPM中任何流程都定义必须有起点。

State:状态节点,示一种等待状态。Fork与Join联合起来完成同步工作流的定义。Decision :完成条件流转的定义,它是一种自动节点。 TaskNode:任务节点,主要用来完成任务分配的定义。

ProcessInstance:流程实例,按照规则来流转的具体信息,比如xxx的请假单,对应某个规则,使用signal();方法提交执行。

ContextInstance:流程实例变量容器,当在创建ProcessInstance对象的同时会创建一个对应的ContextInstance对象,这种对象负责存放各种流程实例变量(比如:xxx的请假单这个流程实例,请假天数5天等信息需要存放)

Token:在创建一个流程市里的同时创建一个流程实例对应的Token(RootToken);对象,这个Token对象开始指向起点,Token对象总会跟一个节点相关联,调用signal();方法,便能使得这个Token的指向从一个节点指向下一个节点,这就是流程执行的意思(简单的说通过令牌指向完成执行采用了树的结构)。

 

 

posted @ 2010-07-30 16:51  Beyond!  阅读(515)  评论(0编辑  收藏  举报