关于Activiti的最基础知识
来源:互联网 发布:网络用语dw什么意思 编辑:程序博客网 时间:2024/06/10 20:30
1.流程框架Activiti5.15.1
Activiti5框架源自于JBPM4流程框架,
集成到项目中时,会自动创建框架所需的23张表,5种不同的分类,如下:
ACT_RE_*: 'RE'表示repository。 这个前缀的表包含了流程定义和流程静态资源 (图片,规则,等等)。
ACT_RU_*: 'RU'表示runtime。 这些运行时的表,包含流程实例,任务,变量,异步任务,等运行中的数据。
Activiti只在流程实例执行过程中保存这些数据, 在流程结束时就会删除这些记录。 这样运行时表可以一直很小速度
很快。
ACT_ID_*: 'ID'表示identity。 这些表包含身份信息,比如用户,组等等。
ACT_HI_*: 'HI'表示history。 这些表包含历史数据,比如历史流程实例, 变量,任务等等。
ACT_GE_*: 通用数据, 用于不同场景下。
框架底层使用的是Mybatis作为持久层,但是对于开发人员来说,依然采用面向对象的方式操作数据库
3》IdentityService:可以管理(创建,更新,删除,查询...)群组和用户、
4》FormService:一个可选服务。即使不使用它,Activiti也可以完美运行, 不
会损失任何功能。这个服务提供了启动表单和任务表单两个概念、
5》RuntimeService、
6》ManagerService:在使用Activiti的定制环境中基本上不会用到。、
7》HistoryService:提供了Activiti引擎手机的所有历史数据),
完成不同的业务操作及操作不同的业务表
流程框架的主要应用目的是可以动态扩展流程中的任务及动态增加业务处理
2.流程的相关概念
a)流程定义
部署流程后,数据库中会有3张表的数据发生变化,用于存储当前部署及流程定义相关的数据,图形,文件内容
b)流程实例
流程实例其实就是流程定义的具体应用,通过startXXXXX方法启动流程实例,
启动流程后,会在RU表及HI表中增加相应的数据
c)任务(用户任务,邮件任务)
所谓的任务其实就是流程中的工作步骤,可以将任务委派给某个人完成,也可以委派给某个小组后再分配给个人完成,当流程中所有的任务完成后,流程结束。
d)开始,结束
流程的边界,由框架自动完成,不需要人工参与。
e)变量
将流程中固定不变的内容通过变量来表示,可以让流程更具备通用性
在流程定义图中使用EL表达式(${tl})增加变量,在启动流程时传递变量
Map<String, Object> varMap = new HashMap<String, Object>();
varMap.put(“tl”, “zhangsan”);
f)网关
网关就是流程中的分支判断,可以在流程定义图中增加判断条件实现
框架中的网关主要分为3种:
1)排他网关:多个逻辑分支同时只能执行一个,分支执行完毕,流程结束
2)并行网关:多个逻辑分支同时执行,一个分支执行完毕后,流程没有结束,需要等待其他分支的执行,所有的分支执行完毕后,流程结束
3)包含网关:多个逻辑分支如果有一个条件成立,那么等同于排他网关,如果有多个条件成立,那么等同于并行网关。
g)监听器
可以监听流程中的操作,当监听器触发后可执行逻辑处理
Activiti5框架源自于JBPM4流程框架,
集成到项目中时,会自动创建框架所需的23张表,5种不同的分类,如下:
ACT_RE_*: 'RE'表示repository。 这个前缀的表包含了流程定义和流程静态资源 (图片,规则,等等)。
ACT_RU_*: 'RU'表示runtime。 这些运行时的表,包含流程实例,任务,变量,异步任务,等运行中的数据。
Activiti只在流程实例执行过程中保存这些数据, 在流程结束时就会删除这些记录。 这样运行时表可以一直很小速度
很快。
ACT_ID_*: 'ID'表示identity。 这些表包含身份信息,比如用户,组等等。
ACT_HI_*: 'HI'表示history。 这些表包含历史数据,比如历史流程实例, 变量,任务等等。
ACT_GE_*: 通用数据, 用于不同场景下。
框架底层使用的是Mybatis作为持久层,但是对于开发人员来说,依然采用面向对象的方式操作数据库
ProcessEngine对象为框架的核心对象,可以创建7种不同的service服务对象(
1》RepositoryService:提供了管理和控制发布包和流程定义的操作、
2》TaskService:所有与任务相关的功能、3》IdentityService:可以管理(创建,更新,删除,查询...)群组和用户、
4》FormService:一个可选服务。即使不使用它,Activiti也可以完美运行, 不
会损失任何功能。这个服务提供了启动表单和任务表单两个概念、
5》RuntimeService、
6》ManagerService:在使用Activiti的定制环境中基本上不会用到。、
7》HistoryService:提供了Activiti引擎手机的所有历史数据),
完成不同的业务操作及操作不同的业务表
流程框架的主要应用目的是可以动态扩展流程中的任务及动态增加业务处理
2.流程的相关概念
a)流程定义
部署流程后,数据库中会有3张表的数据发生变化,用于存储当前部署及流程定义相关的数据,图形,文件内容
b)流程实例
流程实例其实就是流程定义的具体应用,通过startXXXXX方法启动流程实例,
启动流程后,会在RU表及HI表中增加相应的数据
c)任务(用户任务,邮件任务)
所谓的任务其实就是流程中的工作步骤,可以将任务委派给某个人完成,也可以委派给某个小组后再分配给个人完成,当流程中所有的任务完成后,流程结束。
d)开始,结束
流程的边界,由框架自动完成,不需要人工参与。
e)变量
将流程中固定不变的内容通过变量来表示,可以让流程更具备通用性
在流程定义图中使用EL表达式(${tl})增加变量,在启动流程时传递变量
Map<String, Object> varMap = new HashMap<String, Object>();
varMap.put(“tl”, “zhangsan”);
f)网关
网关就是流程中的分支判断,可以在流程定义图中增加判断条件实现
框架中的网关主要分为3种:
1)排他网关:多个逻辑分支同时只能执行一个,分支执行完毕,流程结束
2)并行网关:多个逻辑分支同时执行,一个分支执行完毕后,流程没有结束,需要等待其他分支的执行,所有的分支执行完毕后,流程结束
3)包含网关:多个逻辑分支如果有一个条件成立,那么等同于排他网关,如果有多个条件成立,那么等同于并行网关。
g)监听器
可以监听流程中的操作,当监听器触发后可执行逻辑处理
阅读全文
0 0
- 关于Activiti的最基础知识
- 关于activiti
- 关于activiti驳回等功能的封装
- 关于activiti驳回等功能的封装
- 关于activiti驳回等功能的封装
- 关于activiti数据库连接超时的问题
- 关于activiti驳回等功能的封装
- java最基本的基础知识
- java最基本的基础知识
- jQuery的一些最基础知识
- Activiti最全入门教程
- Activiti系列(一)——最简单的Activiti程序
- Activiti系列(一)——最简单的Activiti程序
- 关于启动的基础知识
- 关于句柄的基础知识
- 关于javascript的基础知识
- 关于批处理文件的基础知识
- 关于委托的基础知识
- poj3268Silver Cow Party之dijkstra解法
- JAVA编程题(初级):输入10个整数,排序后输出。
- 文章标题
- JZOJ1228. Matrix(2017.8B组)
- 洛谷P1607 [USACO09FEB]庙会班车Fair Shuttle
- 关于Activiti的最基础知识
- PHP日期和时间
- POJ例题分类转载(我还没测试过(⊙﹏⊙))
- mybatis自动生成器
- ngiux 404 问题
- POJ-3050
- 百练 反反复复(二维数组水题)
- 关于控件的基本思考——输入框、复选框、开关
- Spring连接数据库