flowable EngineConfiguration的实现分析(2)
EngineConfiguration的实现类是一个抽象类:AbstractEngineConfiguration
一、引擎配置的分类
继承 AbsractEngineConfiguration的子类实现不同方面的功能,包括:
1、身份管理引擎配置
2、表单引擎配置
3、决策引擎配置
4、内容引擎配置
5、流程引擎配置
下图是除了流程引擎配置之外的4个引擎配置的继承关系图,流程引擎配置后面单独介绍。
二、具体实现
下面从自底向上的顺序,分析一下代码:
1、StandaloneInMem 引擎配置
上图最下面的四个类都是以 StandaloneInMem 开始的类。这些类都是主要为了测试目的而存在的。
这些类默认使用 H2 作为引擎数据库。
而在这些类中,只有一句:
his.jdbcUrl = "jdbc:h2:mem:flowable";
这句赋值语句指定了h2数据库的 jdbc url 参数。
每个 StandaloneInMem 开始的类,只有一个构造方法。
每个类的构造方法列举如下:
public StandaloneInMemContentEngineConfiguration() {
this.jdbcUrl = "jdbc:h2:mem:flowable";
}
public StandaloneInMemDmnEngineConfiguration() {
setJdbcUrl("jdbc:h2:mem:flowable");
}
public StandaloneInMemFormEngineConfiguration() {
this.jdbcUrl = "jdbc:h2:mem:flowable";
}
public StandaloneInMemIdmEngineConfiguration() {
this.jdbcUrl = "jdbc:h2:mem:flowable";
}
2、Standalone 引擎配置
Standalone 引擎配置是为了与Spring引擎配置区分而设置的。
实际上,Standalone 出了继承父类之外,没有增加任何其他的代码。
列举如下:
public class StandaloneIdmEngineConfiguration extends IdmEngineConfiguration {
}
public class StandaloneFormEngineConfiguration extends FormEngineConfiguration {
}
public class StandaloneDmnEngineConfiguration extends DmnEngineConfiguration {
}
public class StandaloneContentEngineConfiguration extends ContentEngineConfiguration {
}
3、Spring 引擎配置
所有的Spring引擎配置都实现了Spring的 ApplicationContextAware 接口。
所有的Spring引擎配置,在后面实例运行时再详细分析。
4、引擎配置实现类
后面逐一分析。
flowable EngineConfiguration的实现分析(2)的更多相关文章
- flowable EngineConfiguration的作用和继承关系(1)
EngineConfiguration 是flowable引擎的核心部件. 在 flowable 中,实现引擎配置的顶层类是 AbstractEngineConfiguration 这是一个抽象类. ...
- flowable与camunda性能测试对比分析
前言 目前主流的Java开源流程引擎有Activiti.Flowable.Camunda,笔者在进行流程引擎技术选型时,除了功能方面,性能和稳定性是尤其关注的指标,是选择Flowable?还是Camu ...
- RxJava2 源码分析
前言 很多项目使用流行的Rxjava2 + Retrofit搭建网络框架,Rxjava现在已经发展到Rxjava2,之前一直都只是再用Rxjava,但从来没有了解下Rxjava的内部实现,接下来一步步 ...
- flowable 五个引擎和组成引擎的服务
一.flowable的五个引擎 flowable包含五个引擎,分别是: 1.内容引擎 ContentEngine 2.身份识别引擎 IdmEngine 3.表单引擎 FormEngine 4.决策引擎 ...
- Activiti架构分析及源码详解
目录 Activiti架构分析及源码详解 引言 一.Activiti设计解析-架构&领域模型 1.1 架构 1.2 领域模型 二.Activiti设计解析-PVM执行树 2.1 核心理念 2. ...
- 工作流选型专项,Camunda or flowable or?
1. 名词解释 1.1. BPM Business Process Management,业务流程管理,“通过建模.自动化.管理和优化流程,打破跨部门跨系统业务过程依赖,提高业务效率和效果”. 1.2 ...
- flowable流程启动时监听器
一.核心配置类 package com.magus.project.flow.config; import com.google.common.collect.Maps; import com.mag ...
- 【流程】Flowable流程定义总结
背景 近几年,互联网企业从消费互联网向产业互联网转型.在消费互联网时期,企业面对的时C端消费者,而产业互联网面对的是B端用户. 产业互联网涉及方方面面,企业信息化的建设就是B端用户的业务之一,在企业就 ...
- Java安全之Axis漏洞分析
Java安全之Axis漏洞分析 0x00 前言 看到个别代码常出现里面有一些Axis组件,没去仔细研究过该漏洞.研究记录一下. 0x01 漏洞复现 漏洞版本:axis=<1.4 Axis1.4 ...
随机推荐
- 20145328 《Java程序设计》第7周学习总结
20145328 <Java程序设计>第7周学习总结 教材学习内容总结 第十二章 Lambda 12.1 认识Lambda语法 Lambda 教材的引入循序渐近.深入浅出 Lambda去重 ...
- Spring boot 解决 hibernate no session异常
启动类中加入 @Beanpublic OpenEntityManagerInViewFilter openEntityManagerInViewFilter(){ return new OpenEnt ...
- Lucene 初步 之 HelloWorld
万恶的源头 HelloWorld 要完成lucene 的配置 需要几个jar包 (如果需要可以留言我私发) 创建索引API分析: 1. Directory: 类代表一个Lucene索引的位置,FSDi ...
- gulp+es6构建页面
遇到的问题: 1.es6如何使用,定义一个demo.js //demo.js export default class demo { // 构造函数 constructor(){ //在构造函数中调用 ...
- iOS 可变字符串NSMutableString的使用
.创建一个可变字符串 NSMutableString * ms1 = [[NSMutableString alloc]init]; .可以通过类方法来创建 NSMutableString * ms2 ...
- PHP 循环中临时对象不销毁,会保存到一下循环,这是什么坑。。
在C++中,根本存在这种问题,一个对象或结构体在循环中声明赋值了,再一次循环就自动清空.但是在PHP中这个$monthData在下一次循环却不会重新赋值,而是保留了上一次赋值的值,这样的下一次save ...
- HTML之实现页面缓存
一般来说,对于html页面,一个站点,每个页面都会有相同的公共文件,比如页面的头部.尾部.侧边栏目.公共JS等.访问站点下的每一个页面,相同的公共文件,都需要重复从服务器下载.从性能和带宽角度看,重复 ...
- django from验证组件
from django.shortcuts import render,redirect from django.forms import Form,fields class loginForm(Fo ...
- matlab C++ (VS Qt)混合编程 / mxArray / QT5中文乱码
一.混合编程环境搭建---依据我的情况,分成了4个部分: 1:破解matlab,因为matlab破解不完全,编译器不能使用,会出错.(参考https://blog.csdn.net/a12593012 ...
- activiti如何让业务对象和对应的流程关联
如何让业务对象和对应的流程 关联? 发现ProcessInstance 有个方法getBusinessKey()可以得到一个businessKey. ProcessInstance 对应数据库中的表a ...