创建一个ProcessEngine

Flowable流程引擎通过名为的XML文件进行配置flowable.cfg.xml.

获得一个最简单的方法ProcessEngine是使用这个org.flowable.engine.ProcessEngines类:

ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();

会在类路径中查找文件flowable.cfg.xml, 并根据该文件中的配置构建引擎. 以下片段显示了一个示例配置. 以下部分将详细介绍配置属性.

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

请注意, 配置的XML实际上是一个Spring配置. 这并不意味着Flowable只能在Spring环境中使用! 我们只是利用Spring内部的解析和依赖注入功能来构建引擎.

注意 在flowable.cfg.xml必须包含有ID processEngineConfiguration 的Bean

数据库配置

有两种方法来配置Flowable引擎将使用的数据库. 第一个选项是定义数据库的JDBC属性:

jdbcUrl:数据库的JDBC URL.

jdbcDriver:执行特定数据库类型的驱动程序.

jdbcUsername:连接到数据库的用户名.

jdbcPassword:连接到数据库的密码.

基于提供的JDBC属性构建的数据源将具有默认的MyBatis连接池设置. 可以选择设置以下属性来调整连接池(取自MyBatis文档):

jdbcMaxActiveConnections:连接池在任何时间最多可以包含的活动连接数.默认值是10.

jdbcMaxIdleConnections:连接池在任何时间最多可以包含的空闲连接数.

jdbcMaxCheckoutTime:在强制返回连接之前, 可以从连接池中检出连接的时间量(以毫秒为单位).默认是20000(20秒).

jdbcMaxWaitTime:这是一个低级别的设置, 让池有机会打印日志状态, 并重新尝试获取连接, 以防异常耗时(为了避免在池被错误配置的情况下永远失败)是20000(20秒).

示例数据库配置:

我们的基准测试表明, 在处理大量的并发请求时, MyBatis连接池并不是最高效或灵活的. 因此, 建议使用javax.sql.DataSource实现, 并将其注入流程引擎配置(例如DBCP, C3P0, Hikari, Tomcat连接池等):

...

无论您使用JDBC还是数据源, 都可以设置以下属性:

databaseType: 通常不需要指定该属性, 因为它可以从你的数据库连接字符串中自动检测. 如果自动检测失败时需要指定. 能选择的值有{h2, mysql, oracle, postgres, mssql, db2}.

databaseSchemaUpdate: 设置策略来处理流程引擎启动和关闭时的数据库模式.

false(默认值):在创建流程引擎时检查数据库模式的版本,如果版本不匹配,则引发异常.

true: 在构建流程引擎时, 将执行检查, 并在必要时执行架构的更新. 如果架构不存在, 则会创建该架构.

create-drop: 在创建流程引擎时创建模式, 并在流程引擎关闭时删除模式.

支持的数据库

MySQL用户注意

低于5.6.4的MySQL版本不支持时间戳或毫秒级精度的日期. 更糟糕的是, 有些版本在创建这样的列时会抛出异常, 而其他版本则不会.

具体来说, 以下适用于MySQL版本:

<5.6: 没有可用的毫秒精度. DDL文件可用(查找包含mysql55的文件).可以直接使用自动创建/更新.

5.6.0 - 5.6.3: 没有可用的毫秒精度. 自动创建/更新将不起作用. 建议无论如何升级到更新的数据库版本. 如果不行, 可以使用mysql 5.5的 DDL文件.

5.6.4+: 可用的毫秒精度. 可用的DDL文件(包含mysql的默认文件). 可直接使用自动创建/更新.

数据库表名解释

Flowable的数据库名称都以ACT_开头. 第二部分是表用例的两字符识别. 这个用例也将大致匹配服务API.

ACT_RE_ *: RE代表repository. 带有此前缀的表包含静态信息, 如流程定义和流程资源(图像, 规则等).

ACT_RU_ *: RU代表runtime. 这些是包含流程实例, 用户任务, 变量, 作业等的运行时数据存储表. Flowable仅在流程实例执行期间存储运行时数据, 并在流程实例结束时删除记录. 这使运行时间小而快速.

ACT_HI_ *: HI代表history. 这些表格包含历史数据, 例如过去的流程实例, 变量, 任务等等.

ACT_GE_ *: general数据, 用于各种用例.

数据库升级

确保在运行升级之前备份数据库(使用数据库备份功能).

默认情况下, 每次创建流程引擎时都会执行版本检查. 这通常发生在您的应用程序或Flowable Web应用程序启动时. 如果Flowable库注意到库版本和Flowable数据库表版本之间存在差异, 则抛出异常.

要进行升级, 您必须先将以下配置属性放在flowable.cfg.xml配置文件中:

class="org.flowable.engine.impl.cfg.StandaloneProcessEngineConfiguration">

flowable支持的mysql版本_Flowable3-配置相关推荐

  1. django2.1支持的mysql版本_一文解决django 2.2与mysql兼容性问题

    Django是一个开放源代码的Web应用框架,由Python写成.采用了MTV的框架模式,即模型M,视图V和模版T.它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS( ...

  2. wamp 配置 mysql_PHPWAMP配置应该如何修改,Web服务器、php、mysql的具体配置修改

    phpwamp支持Nginx.apache.iis(均为完整版更稳定) 默认集成了多个php版本,包含TS与NTS,(支持自定义php版本) Mysql默认集成了mysql5.5.mysql5.6.m ...

  3. php pho 连接 MySQL_PHPWAMP配置应该如何修改,Web服务器、php、mysql的具体配置修改...

    phpwamp支持Nginx.apache.iis(均为完整版更稳定) 默认集成了多个php版本,包含TS与NTS,(支持自定义php版本) Mysql默认集成了mysql5.5.mysql5.6.m ...

  4. mysql安装与配置的截图_windows下MySQL5.6版本安装及配置过程附有截图和详细说明...

    随着MYSQL版本的更新以及电脑系统的变化,我们给大家整理了各种电脑环境下安装MYSQL的图解过程,希望我们整理的内容能够帮助到大家:mysql安装图解总结 https://www.jb51.net/ ...

  5. mysql zip win10安装_mysql 8.0.16 Win10 zip版本安装配置图文教程

    本文为大家分享了mysql 8.0.16  Win10 zip版本安装配置图文教程,供大家参考,具体内容如下 首先去mysql官网下载mysql最新版本 1.选择如图所示 community 2.点击 ...

  6. wamp添加mysql版本_PHPWAMP自定义添加PHP版本教程,支持无限添加PHP和Mysql版本

    我最新开发的PHPWAMP8.8.8.8n可以支持无限添加Mysql版本和php版本, 因为新版的自定义相对旧版本还是有点区别的,所以重写自定义PHP版本教程. 目前有很多网友自发在网上编写了PHPW ...

  7. mysql 8.0.24版本安装配置方法图文教程

    文章来源: 学习通http://www.bdgxy.com/ 普学网http://www.boxinghulanban.cn/ 智学网http://www.jaxp.net/ 本文记录了mysql 8 ...

  8. vps服务器有没有支持 java的_linux vps 配置搭建java服务器环境(jdk+tomcat+mysql)

    之前vps一直用windows的, 对于一个java流的小码农来说, 总是感觉怪怪的, 最近比较闲, 新开了一个linux的vps, 系统是centos 6.3, vps开通之后拿到root密码, 开 ...

  9. mysql 8.0.28版本安装配置方法图文教程

    mysql 8.0.28版本安装配置方法图文教程 从 Mysql 官网下载 mysql 下载完成后直接双击进行安装,打开后的页面如下所示: 选择自定义custom,接着下一步 将MySQL Serve ...

最新文章

  1. 从1的补码说起计算机的数制
  2. 【 FPGA/IC 】谈谈复位
  3. jQuery上拉加载更多
  4. 清北学堂模拟赛d2t4 最大值(max)
  5. 【转】C#打包文件夹成zip格式(包括文件夹和子文件夹下的所有文件)
  6. python读取mysql数据库_Python操作MySQL数据库9个实用实例
  7. 冲突问题和核心对象和原生js 和 jquer的区别的两个区别(固定格式的区别和入口函数的区别)
  8. NYOJ --21--三个水杯
  9. 用计算机制作标准曲线的方法,如何制作标准曲线
  10. 微信支付解决多商户平台收款
  11. Latex更改参考文献格式
  12. 二. 再熟悉 Markdown 标准语法
  13. Vue+H5 活动内容调用微信分享
  14. Visal.B来袭,新近出现的恶意软件
  15. 【三维概念】【Cesium】 Camera控制-视角-roll,pitch,heading的含义
  16. 模型通道剪枝汇总(channel pruning)
  17. ASP.NET程序设计教程(C#版)——学习心得
  18. Tolua使用笔记三:Tolua协程用法
  19. mysql数据库select语句用法_mysql学习笔记之完整的select语句用法实例详解
  20. python数据分析项目实战波士顿房价预测——手写梯度下降法

热门文章

  1. 通信网络基础实验报告_建设亚太信息枢纽港、实现5G网络全覆盖!临港新片区通信基础设施规划发布...
  2. java编码技巧_两个Java初学者编码技巧
  3. windows设置右键sublime Text3
  4. oracle redo删除,意外删除redo的恢复
  5. ercp手术为什么那么贵_尼泊尔佛像为什么那么贵?
  6. python登录代码思路_终于找到一个思路比较清晰的可以模拟登录百度的代码!
  7. Android无法运行AVD,android – 无法运行AVD(模拟器)
  8. oracle expdp数据到txt,[20130727]ORACLE 12C使用expdp导出view数据.txt
  9. php网页轮播图,JavaScript_JavaScript实现图片轮播的方法,本文实例讲述了JavaScript实现图 - phpStudy...
  10. spring boot: 查看ApplicationContext中有哪些Bean