Activiti工作流学习(一)——Activiti服务类
Activity有9个service
1.DynamicBpmnService动态Bpmn服务
Service providing access to the repository of process definitions and deployments.
服务提供对流程定义和部署的存储库的访问。
这个服务是5.19版本后新增的一个服务,和RepositoryService的作用相似,都是与流程定义有关,但是却完全不同。从名字上来看是动态的BPMN服务,看里面的方法都是改变流程的相关属性。这个方法就可以直接操作流程定义,而不需要读取模型,再设计部署(一个流程基本要经过创建模型,设计画图,生产BPMN的XML文件,再部署成流程定义,这个服务就可以直接操作流程定义,不会改变原本的文件,个人感觉可能会带来一些的问题,但是目前对于流程流转内部实现还没有完全理解,使用要谨慎,比如有的流程正在运行老版本的定义,这个时候改变流程定义,接下来怎么流转之类的都是问题)。
2.EngineService引擎服务
Interface implemented by all classes that expose the Activiti services.
接口实现的所有类都公开了Activiti服务。
一共提供了9个接口
//获取RepositoryService
RepositoryService getRepositoryService();
//获取RuntimeService
RuntimeService getRuntimeService();
//获取FormService
FormService getFormService();
//获取TaskService
TaskService getTaskService();
//获取HistoryService
HistoryService getHistoryService();
//获取IdentityService
IdentityService getIdentityService();
//获取ManagementService
ManagementService getManagementService();
//获取DynamicBpmnService
DynamicBpmnService getDynamicBpmnService();
//获取流程引擎配置
ProcessEngineConfiguration getProcessEngineConfiguration();
其中8个接口是用来获取其他Service的,1个接口用来获取流程引擎配置
用引擎获取其他service方法
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();//获取引擎
DynamicBpmnService dbService = processEngine.getDynamicBpmnService();//获取需要的Service
3.FormService表单服务
Access to form data and rendered forms for starting new process instances and completing tasks.
访问表单数据和呈现表单以启动新的流程实例和完成任务。
4.HistoryService历史服务
Service exposing information about ongoing and past process instances. This is different from the runtime information in the sense that this runtime information only contains the actual runtime state at any given moment and it is optimized for runtime process execution performance.
The history information is optimized for easy querying and remains permanent in the persistent storage.
服务公开正在进行的和过去的流程实例的信息。
这与运行时信息不同,因为这个运行时信息只包含任何给定时刻的实际运行时状态,并且对运行时流程执行性能进行了优化。
历史信息是为了便于查询而优化的,并且在持久存储中保持永久不变。
5.IdentityService身份服务
Service to manage {@link User}s and {@link Group}s.
服务来管理{@link用户}和{@link组}。
6.ManagementService管理服务
Service for admin and maintenance operations on the process engine.
These operations will typically not be used in a workflow driven application,
but are used in for example the operational console.
服务于流程引擎上的管理和维护操作。
这些操作通常不会在工作流驱动的应用程序中使用,
但是在操作控制台中使用。
7.RepositoryService库服务
Service providing access to the repository of process definitions and deployments.
服务提供对流程定义和部署的存储库的访问。
8.RuntimeService运行时服务
Starts a new process instance in the latest version of the process definition with the given key..
使用给定的键在流程定义的最新版本中启动一个新的流程实例。
9.TaskService任务服务
Service which provides access to {@link Task} and form related operations.
提供访问{@link任务}和表单相关操作的服务。
Activiti工作流学习(一)——Activiti服务类的更多相关文章
- Activiti工作流学习之流程图应用详解
Activiti工作流学习之流程图应用详解 1.目的 了解Activiti工作流是怎样应用流程图的. 2.环境准备2.1.相关软件及版本 jdk版本:Jdk1.7及以上 IDE:eclipse ...
- Activiti工作流学习之概述(一)
一.工作流介绍 我第一次听到这个词,是蒙逼的,再看百度百度,更傻眼了,完全说的不像人话啊,举几个生活中的例子,就明白多了比如:请假.报销等等,如果文字太过抽象,请看图: 二.工作流引擎 Process ...
- Activiti工作流学习笔记一
Activiti工作流 一:Activiti第一天 1:工作流的概念 说明: 假设:这两张图就是华谊兄弟的请假流程图 图的组成部分: 人物:范冰冰冯小刚王中军 事件(动作):请假.批准.不批准 工作流 ...
- Activiti工作流学习(三)Activiti工作流与spring集成
一.前言 前面Activiti工作流的学习,说明了Activiti的基本应用,在我们开发中可以根据实际的业务参考Activiti的API去更好的理解以及巩固.我们实际的开发中我们基本上都使用sprin ...
- Activiti工作流学习笔记(三)——自动生成28张数据库表的底层原理分析
原创/朱季谦 我接触工作流引擎Activiti已有两年之久,但一直都只限于熟悉其各类API的使用,对底层的实现,则存在较大的盲区. Activiti这个开源框架在设计上,其实存在不少值得学习和思考的地 ...
- Activiti工作流学习-----基于5.19.0版本(3)
前面关于eventType的属性值的配置简单的说了一下,activiti支持的值如下表所示:这是我摘抄的activiti官网的 Event 的名字 描述 Event的类名 ENGINE_CREATED ...
- Activiti工作流学习-----基于5.19.0版本(4)
四.使用工作流开发 org.activiti.engine.ProcessEngine提供的Service作用在工作流引擎上面,如果所示是模仿一个公司简单的审批流程,你可以下载这个Demo:Activ ...
- Activiti工作流学习笔记(四)——工作流引擎中责任链模式的建立与应用原理
原创/朱季谦 本文需要一定责任链模式的基础,主要分成三部分讲解: 一.简单理解责任链模式概念 二.Activiti工作流里责任链模式的建立 三.Activiti工作流里责任链模式的应用 一.简单理解责 ...
- Activiti工作流学习(一)部署对象和流程定义
一.前言 前一段时间在工作中,使用了流程审批,对api的调用非常不熟悉,都是调用别人写好的接口在界面上进行显示,基本了解了流程审批的主要步骤,现对流程审批进行学习,主要是调用api进行CRUD操作,感 ...
随机推荐
- linux awk和sed工具
慕课网链接:https://www.imooc.com/video/14508 部分示例命令 #替换passwd中的用户名和userid和gid gsed 's/\(^[a-z_-]\+\):\*:\ ...
- GB2312 字符集
<信息交换用汉字编码字符集>是由中国国家标准总局1980年发布,1981年5月1日开始实施的一套国家标准,标准号是GB 2312—1980. GB2312编码适用于汉字处理.汉字通信等系统 ...
- Python3的内置函数介绍
Python3的官网链接:https://docs.python.org/3/library/functions.html?highlight=built#ascii 内置函数介绍 abs 绝对值函数 ...
- Win10 收件箱添加QQ邮箱(2019年5月19日)
Emmm弄的时候没截图,就语言描述吧,非常简单. 登录到网页端QQ邮箱.点我登录 登录之后,界面上端的Logo右边有个"设置"(字有点小).点它 邮箱设置下面有一堆标签,点击&qu ...
- STM32固件库模板下载以及固件库学习方法
固件库模板下载 固件库模板新建过程: 下载我们上节的固件库文件 电脑新建一个文件夹命名为Fwlib-Template,在此文件夹下分别新建DOC Libraries Project User 这四个文 ...
- unittest之二makeSuite\testload\discover及测试报告teseReport
测试套件suite除了使用addTest以外,还有使用操作起来更更简便的makeSuite\testload\discover 1.makeSuite,创建测试套件,传的参数是要执行的测试用例所在的类 ...
- uboot中打开 debug调试信息的方法
在uboot目录下include/common.h中, 原理:只需要让 _DEBUG 的值为 1即可. 最简单的做法就是在下图第一行之前添加 #define DEBUG
- Codeforces 1249 E. By Elevator or Stairs?
传送门 首先显然下楼的操作一定是不优的,所以只要考虑上楼 设 $f[i]$ 表示到第 $i$ 层时需要的最少时间 那么首先考虑走楼梯,有转移,$f[i]=f[i-1]+a[i-1]$ 然后考虑坐电梯有 ...
- (十三)Hibernate中的多表操作(3):单向多对多
多对多的处理方式是,有一张中间表,中间表保存两个多方之间的关系.首先来看实际应用场景:在之前开发的系统中,应用了基于角色的控制访问,也就是RBAC模型,一个用户可能存在多种角色,一种角色也可能有多个用 ...
- Spring Boot 默认首页
//继承 WebMvcConfigurerAdapter @Override public void addViewControllers(ViewControllerRegistry registr ...