13activiti - 流程管理定义(部署流程定义)

classpath路径加载文件

13activiti - 流程管理定义(部署流程定义)

1)先获取流程引擎对象:在创建时会自动加载classpath下的activiti.cfg.xml。

2)首先获得默认的流程引擎,通过流程引擎获取了一个RepositoryService对象(仓库对象)。

3)由仓库的服务对象产生一个部署对象配置对象,用来封装部署操作的相关配置。

4)这是一个链式编程,在部署配置对象中设置显示名,上传流程定义规则文件。

5)向数据库表中存放流程定义的规则信息。

6)这一步在数据库中将操作三张表:

  • act_re_deployment(部署对象表)
    存放流程定义的显示名和部署时间,每部署一次增加一条记录
  • act_re_procdef(流程定义表)
    存放流程定义的属性信息,部署每个新的流程定义都会在这张表中增加一条记录。
    注意:当流程定义的key相同的情况下,使用的是版本升级
  • act_ge_bytearray(资源文件表)

存储流程定义相关的部署信息。即流程定义文档的存放地。每部署一次就会增加两条记录,一条是关于bpmn规则文件的,一条是图片的(如果部署时只指定了bpmn一个文件,activiti会在部署时解析bpmn文件内容自动生成流程图)。两个文件不是很大,都是以二进制形式存储在数据库中。

zip格式文件

13activiti - 流程管理定义(部署流程定义)

压缩成zip格式的文件,使用zip的输入流用作部署流程定义
13activiti - 流程管理定义(部署流程定义)

其它

Deployment 部署对象

  1. 一次部署的多个文件的信息。对于不需要的流程可以删除和修改。
  2. 对应的表:
    act_re_deployment:部署对象表
    act_re_procdef:流程定义表
    act_ge_bytearray:资源文件表
    act_ge_property:主键生成策略表

ProcessDefinition 流程定义

  1. 解析.bpmn后得到的流程定义规则的信息,工作流系统就是按照流程定义的规则执行的。

 

上一篇:JS原生双栏穿梭选择框


下一篇:sigaction()函数