snakerflow教程文档.docx

上传人:b****2 文档编号:24168984 上传时间:2023-05-25 格式:DOCX 页数:14 大小:1.05MB
下载 相关 举报
snakerflow教程文档.docx_第1页
第1页 / 共14页
snakerflow教程文档.docx_第2页
第2页 / 共14页
snakerflow教程文档.docx_第3页
第3页 / 共14页
snakerflow教程文档.docx_第4页
第4页 / 共14页
snakerflow教程文档.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

snakerflow教程文档.docx

《snakerflow教程文档.docx》由会员分享,可在线阅读,更多相关《snakerflow教程文档.docx(14页珍藏版)》请在冰豆网上搜索。

snakerflow教程文档.docx

snakerflow教程文档

1、工作流概述

1、工作流运作机制,其实就是围绕张核心的增删改查进行运作。

1)首先你需要定义一个流程文件也就是*文件,这个文件是对流程的描述。

2)部署流程文件*,也就是在数据库中对新增一条记录,其中表的字段就是存的流程文件内容。

这表中的一条记录相当于一个模板,所有的流程实例都已据此生成。

3)启动一个流程,也就是我们所说的生成一个流程实例;生成时要指定表的一条记录的。

启动成功后会在数据库中和表中分别插入一条记录,两个表的是相同的,不带的表都是存储当前有效(执行中)的记录。

带是存储的结束的(下同)。

比表多一个字段,用来表示该流程实例是否已经结束,进行中;结束。

所有字段的含义和枚举值都在源码中有解释。

(下同)。

表中字段存的是该流程实例的全局变量,你可以在任何节点的时候获取使用。

4)执行节点的任务,上述中存的是执行中的记录,也就是说在执行前,中肯定会有一条执行中的任务记录,假设为,那么执行时的增删改为先将和表中的记录插入和中;其次是删除和中记录,然后将的信息插入到和中。

此时表的是历史表记录的,通过此可将所有任务串联起来。

表的中的值为局部变量只能在当前中使用。

有人会有疑问,假设有如下流程图,执行时会怎么样?

因为开始节点是一个比较特殊的,群主称之为流转逻辑元素(下面总体设计思路中会有详细介绍),它只负责流转到下一节点不负责执行,也就没有数据库的增删改。

这样直接流转到,插入和,并且又直接流转到节点,节点也是一个流转元素,它会直接删除表的记录并更改该流程实例表的的状态。

至此一个流程的所有增删改查结束。

2、工作流执行过程

此处结合源码分析整个执行过程:

1、工作流的入口类,是你在配置文件中配置的实现类。

比如集成你需要配置如下内容

该入口类包含大服务和一个配置解析类

从上图可知,流程引擎对象是由根据构建所得,并且包含五项服务:

):

负责部署、卸载、更新流程,并且可创建无流程定义的自由流程

):

负责创建、更新、完成、终止流程实例

):

负责创建、完成任务,并且可创建自由任务

):

负责提供与流程相关的管理服务

):

负责与流程相关的查询操作

对于不使用其他框架容器创建对象,就像上面所述流程引擎对象是由根据构建所得,其他服务也配置在中,我们称之非托管容器,即所有对象的创建由自身创建。

如何做到的?

说白了就是把类名存到内存中需要的时候反射创建出一个对象来。

对于托管型容器,比如交给的来创建对象,那么就应该在的配置文件里定义了。

1)不依赖其他框架时,入口类定义的是

用到的创建对象容器是

如何构建流程引擎

方法往下都是从容器中创建五大服务对象,关键是方法都干了什么。

读取了几个配置文件,就是判断是否是容器托管,就是是否使用自身的容器。

也就是说会读取文件

2)对于托管类,据为例,配置了

使用了

容器交给了的,是否容器托管设置为了,也就是说不会读取

至此,在启动服务器时,的初始化工作完成。

2、流程部署,那肯定是去找的实现类啊

没什么好说的组织一个存到数据库表,关键是交给谁去。

这是在配置文件中配置的工具,交给的具体配置如下。

这里还要提到方法,为什么要提到它,因为它的方法里面有解析流程文件为具体哪个。

崇尚简单,所以组件模型非常精简,主要由两类元素组成:

)流转逻辑元素

)业务逻辑元素

也就是说你部署流程的同时,会在内存中缓存一个对象,并且这个对象中有包含了解析流程文件的所有节点信息。

3、启动实例

先从数据库获取指定的流程,上述中提到方法,获取的同时也会缓存,解析成对应的。

然后启动,

1)创建一个执行单元,该执行单元包含了流程引擎对象,,和执行人和参数。

此处对数据库新增相关表。

2)任务节点执行

注释写得很清楚,不赘述。

3、的总体设计思路

此处不再做赘述,参考

4、详细介绍

5、扩展

6、使用

1、首先进入系统,并分配流程管理权限

2、选择其中一个流程点设计按钮,进入流程设计画面

此时你将看到流程设计页面,画流程图的原则是必须要有一个开始节点和一个结束节点。

3、流程属性

点击空白处会出现该流程文件的属性

名称为必填项,实例启动也是必填项,指示流程启动时跳转显示业务数据的地址。

4、任务节点介绍

新增任务节点或者其他节点时,只需要点击左侧某类型节点不松鼠标,并将其拖至右侧画板区域即可显示该类型节点。

单击一个任务节点会弹出如下一个任务属性框,名称是必填项且不能与其他节点重复,参与者也是必填项,参与类型如果是普通任务就选普通参与,如果是会签任务,则必须选择会签参与,前、后置拦截器是用于更新业务数据,需要编写代码,并将完整类名填写于此。

用键盘键可以删除任务节点。

5、决策节点

决策节点需要定义决策表达式,表达式的位置可以在三处:

1)决策节点上

2)决策节点处理类中

3)决策表达式出边上

6、连接线介绍

使用连接线时需要先选择左侧工具栏里面的连接线工具

连接时,先选中一个节点,然后再选中另一个节点,则节点和就会被连接,删除连接线也用键。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 机械仪表

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1