Activiti流程引擎_activiti工作流原理

Activiti流程引擎_activiti工作流原理Activiti框架提供的流程引擎配置类ProcessEngineConfiguration的类图如下:下面的图是流程引擎的架构图:由上图我们可以很清楚地从全局角度了解ProcessEngineConfiguration类:1)EngineServices:该接口中定义了获取各种服务类实例对象的方法。2)ProcessEngine:继承EngineServices接口,并增…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

Activiti框架提供的流程引擎配置类ProcessEngineConfiguration的类图如下:

Activiti流程引擎_activiti工作流原理

下面的图是流程引擎的架构图:

Activiti流程引擎_activiti工作流原理

由上图我们可以很清楚地从全局角度了解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.net/179899.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Otter介绍及(Manager)安装「建议收藏」

    Otter介绍及(Manager)安装「建议收藏」Otter 简单介绍名称:otter['ɒtə(r)]译意:水獭,数据搬运工语言:纯java开发定位:基于数据库增量日志解析,准实时同步到本机房或异地机房的mysql

    2022年8月3日
    6
  • git 查看当前用户[通俗易懂]

    git 查看当前用户[通俗易懂]查看当前登录用户:gitconfiguser.name//获取当前登录的用户gitconfiguser.email//获取当前登录用户的邮箱

    2025年6月11日
    6
  • 服务器php环境搭建教程,PHP服务端环境搭建图文详解

    服务器php环境搭建教程,PHP服务端环境搭建图文详解PHP环境搭建也是一门技术,本文主要为大家分享一篇PHP服务端环境搭建的图文教程,具有很好的参考价值,希望对大家有所帮助。一、PHP服务端环境搭建1.php服务端环境安装套件xampp(apach+mysql+php解释器)F:\MyDoc文件(重要)\DL_学习\download重要资源\apache服务器组件安装此时进入xmapp面板显示成功运行测试本地Apache服务器是否开启:浏览器…

    2022年6月15日
    39
  • spring boot 系列之四:spring boot 整合JPA[通俗易懂]

    上一篇我们讲了springboot整合JdbcTemplate来进行数据的持久化,这篇我们来说下怎么通过springboot整合JPA来实现数据的持久化。一、代码实现二、知识点引申关于

    2022年2月16日
    44
  • 数据库里的bit类型

    数据库里的bit类型Bit 称为位数据类型 其数据有两种取值 0 和 1 长度为 1 位 在输入 0 以外的其他值时 系统均把它们当 1 看待 这种数据类型常作为逻辑变量使用 用来表示真 假或是 否等二值选择 SQLServer 中保存数据的一种类型 只能存储 true false 程序读取数据库出来之后的表现形式是 true 或者 false 但是保存在数据库中的结构类型是 0 或者 1 1 表示 true 0 表示 false SQLSer

    2025年6月10日
    4
  • Java中高级工程师面试题及答案,Java面试题及答案汇总(二

    Java中高级工程师面试题及答案,Java面试题及答案汇总(二需要注意Jdk1.8中对HashMap的实现做了优化,当链表中的节点数据超过八个之后,该链表会转为红黑树来提高查询效率,从原来的O(n)到O(logn)24.说一下HashSet的实现原理?HashSet底层由HashMap实现HashSet的值存放于HashMap的key上HashMap的value统一为PRESENT25.ArrayList和LinkedList的区别是什么?最明显的区别是ArrrayList底层的数据结构是数组,支持随机访问,而Linke

    2022年5月11日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号