Activiti流程引擎_activiti工作流原理
Activiti框架提供的流程引擎配置类ProcessEngineConfiguration的类图如下:
下面的图是流程引擎的架构图:
由上图我们可以很清楚地从全局角度了解ProcessEngineConfiguration类:
1)EngineServices:该接口中定义了获取各种服务类实例对象的方法。
2)ProcessEngine:继承EngineServices接口,并增加了对流程引擎名称的获取以及关闭流程引擎的支持。
3)ProcessEngineImpl: 是引擎默认的实现类,对ProcessEngine接口中定义的方法进行实现,对外提供服务。实际上,这些对外提供的服务是由 ProcessEngineConfigurationImpl 构造的,ProcessEngineImpl 调用 ProcessEngineConfigurationImpl 的方法获得服务。
4)ProcessEngines:该类负责管理所有的流程引擎ProcessEngine集合,并负责流程引擎实例对象的注册、获取、注销等操作。
5)ProcessEngineConfiguration:该抽象类实现EngineServices接口,提供了一系列创建流程引擎配置类ProcessEngineConfiguration实例对象的方法。
6)ProcessEngineConfigurationImpl:该抽象类继承ProcessEngineConfiguration,负责创建一系列服务类实例对象、流程引擎实例对象以及ProcessEngineImpl类实例对象。该类可以通过流程配置文件交给Spring容器管理或者使用编程方式动态构建。
7)SpringProcessEngineConfiguration:主要用于整合Spring框架时使用,提供了几个重要功能:创建流程引擎实例对象,流程引擎启动之后自动部署配置的流程文档(需要设置),设置流程引擎连接的数据源、事务管理器等。
8)StandaloneProcessEngineConfiguration:标准的流程引擎配置类。
9)MultiSchemaMultiTenantProcessEngineConfiguration:“多数据库多租户”流程引擎配置类,Activiti通过此类为开发人员提供了自动路由机制,这样当流程引擎需要连接多个数据库进行操作时,客户端无须关心引擎到底连接的是哪一个数据库,该类通过路由规则自动选择需要操作的数据库,数据库的操作对客户端来说是透明的,客户端无须关心其内部路由实现机制。
10)JtaProcessEngineConfiguration:顾名思义,通过类名也知道该类支持JTA。
11)StandaloneInMemProcessEngineConfiguration:该类通常可以在开发环境中自测使用,默认采用H2数据库存储数据。
12)EngineServices提供的服务类如下:
service接口 | 作用 |
---|---|
RepositoryService | 流程仓库service,用于管理流程仓库,如部署、删除、读取流程资源 |
IdentityService | 身份service,可以管理和查询用户、组之间的关系 |
RuntimeService | 运行时service,处理所有正在运行状态的流程实例、任务等 |
TaskService | 任务service,用于管理、查询任务,如签收、办理、指派等 |
FormSerivice | 表单service,用于读取和流程、任务相关的表单数据 |
HistoryService | 历史service,可以查询所有历史数据,如流程实例、任务、活动、附件等 |
ManagementService | 引擎管理service,和具体业务无关,主要用于查询引擎配置、数据库、作业等 |
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/179899.html原文链接:https://javaforall.cn
相关文章
- Ubuntu 搭建opengrok 流程
- 面试突击72:输入URL之后会执行什么流程?
- 10.9VR行业大事件:腾讯基于AR视频数据处理专利获授权;Meta改进了《Horizon Worlds》的错误报告流程
- 流程引擎BPM对比[通俗易懂]
- 【说站】云贝连锁V2独立版V2.1.5源码-优化扫码登陆流程
- 流程引擎activiti原理_activiti流程引擎原理
- 流程引擎应用及分析论文_微服务 流程引擎
- Camunda流程引擎快速入门——Hello World示例
- 10个不错的绘制流程框图的工具推荐
- Iosapp上架流程
- [ios开发]-APP-上架流程
- Mysql账号管理与引擎相关功能实现流程
- Spring MVC 执行流程和源码分析详解编程语言
- 深入理解MySQL复制的原理和流程(mysql复制原理及流程)
- 管理管理Oracle工单:确保流程无误(oracle工单)
- 利用MSSQL管理网站账号注册流程(mssql 网站账号注册)
- Oracle公司面试探索高效的流程(oracle公司面试流程)
- 深入探索Redis交互流程(与redis交互流程)
- Oracle DMP操作流程快速清除数据库信息(oracle dmp清除)