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操作,感 ...
随机推荐
- Itellij IDEA下Maven的配置
maven基本配置 配置阿里云镜像 打开settings.xml,添加 <mirrors> <mirror> <id>alimaven</id> < ...
- 2019版UI学习路线(含大纲+视频+工具+网盘+面试题)
2019最新UI设计师教程(学习路线+课程大纲+视频教程+面试题+学习工具) 什么是全链路UI设计 UI设计师是随着网络而兴起的新兴设计行业,从事对软件的人机交互.操作逻辑.界面美观的整体设计工作.涉 ...
- easyui实现树形菜单Tab功能、layout布局
一:常见三种前端ui框架 在初学者入门的状态下,我们常见的前端框架有三种且都有自己的官方网站: 1.easyui:官方网站(http://www.jeasyui.net/) 基于jquery的用户页面 ...
- 解决Cannot change version of project facet Dynamic web module to 2.5(转)
我们用Eclipse创建Maven结构的web项目的时候选择了Artifact Id为maven-artchetype-webapp,由于这个catalog比较老,用的servlet还是2.3的,而一 ...
- 查找-------(HashCode)哈希表的原理
这段时间 在 准备软件设计师考试 目的是想复习一下 自己以前没怎么学的知识 在这个过程中 有了很大的收获 对以前不太懂得东西 在复习的过程中 有了很大程度的提高 比如在复习 程序 ...
- Java RadixSort
Java RadixSort /** * <html> * <body> * <P> Copyright 1994-2018 JasonInternational ...
- Servlet实现图片文件上传
1.首先要导入以下两个jar包: commons-fileupload-1.2.1.jarcommons-io-1.4.jar 2.jsp文件:index.jsp <%@ page langua ...
- 使用百度echarts仿雪球分时图(一)
第一次写技术博客,有不足的地方希望大家指证出来,我再加以改正,谢谢大家. 之前一直没有找到一个合适的分时图项目,所以决定自己动手撸一个.接触的图表框架不多,在网上看到不少人推荐使用echarts,看了 ...
- stm32 输入捕获
根据定时器的计数频率,我们就可以算出t1-t2的时间,从而得到高电平脉宽 计算公式 N * ARR + CCRx2 首先设置定时器通道为上升沿捕获,这样在t1时刻,就会捕获到当前的CNT值,然后立即清 ...
- 【OGG 故障处理】OGG-01031
故障原因 -------------------- 网络异常,导致DP进程异常中断 故障现象 -------------------- 源端DP 进程全部挂起,且启动失败 GGSCI 34> ...