ESB集成了数据库MySQL,通过简单的配置,书写SQL语句,即可实现获得MySQL数据,输出数据等操作。

连接到MySQL数据库

与MySQL集成,首先要连接到数据库。

在【服务连接】模块,添加【MySQL】连接,填写连接信息,测试通过后,保存连接。如图:

Image

# MySQL Command

MySQL Command,用于不需要返回,只执行SQL语句的情况,比如执行删除,更新等。

集成场景

使用ESB业务输出,配置Command执行SQL语句删除表→在流程上调用执行配置的Command,并返回影响的行数。

Image

# 配置使用Command

以执行删除表数据为例,演示Command的使用。

在【ESB输出】模块,点击【添加】,进入ESB业务输出配置界面,拖出【MySQL Command】节点进行配置,如图:

Image

在【常规】配置界面,选择连接后,书写删除表数据的SQL语句,如图:

Image

在【调用】界面,若在SQL语句中定义了参数,需要在这里设置传参,这里保持默认即可,如图:

Image

在【返回】界面,把影响的行数返回,如图:

Image

到这里,使用MySQL Command执行删除表数据就配置完成,点击保存为:MySQL Command-删除数据。

# 在流程上调用配置的Command

在流程建模模块,拖出任务,切换为【调用ESB】节点,在【常规】配置界面,选择调用对象为在ESB业务输出模块配置的MySQL Command-删除数据,如图:

Image

配置传参

在业务输出模块没有配置传参,这里也无需配置,保持默认即可。

数据返回

把删除数据后返回的影响行数显示到表单上,如图:

Image

到这里,在流程上的调用配置就完成了,保存发布流程:数据库集成。

调用

在流程门户,直接提交表单发起流程:

Image

提交后,调用ESB配置的MySQL Command-删除数据,返回4,代表删除了表4行数据,如图:

Image

# MySQL Insert

MySQL Insert,需要返回插入行的ID时,使用Insert,插入表需要有自增列。

集成场景

使用ESB业务输出,配置Insert执行SQL语句插入一条数据到数据库表→在流程上调用执行配置的Insert,并返回插入行的ID。

Image

# 配置使用Insert

以执行插入一条数据到数据库表为例,演示Insert的使用。

在【ESB输出流】模块,点击【添加】,进入ESB业务输出配置界面,拖出【MySQL Insert】节点进行配置,如图:

Image

在【常规】配置界面,选择连接后,书写插入数据的SQL语句,如图:

Image

在【调用】界面,在SQL语句中定义了参数,需要在这里设置传参,如图:

Image

在Listenner参数下,右键“Payload”【添加主表引用】,如图:

Image

以拖拽的方式,把左侧添加的主表字段依次映射到右侧对应的参数,如图:

Image

在【返回】界面,把插入行对应的ID返回,如图:

Image

到这里,使用MySQL Insert执行插入一条数据到数据库表就配置完成,点击保存为:MySQL-Insert。

# 在流程上调用配置的Insert

在流程建模模块,拖出任务,切换为【调用ESB】节点,在【常规】配置界面,选择调用对象为在ESB业务输出模块配置的MySQL-Insert,如图:

Image

配置传参

把流程数据传给ESB,只需拖拽字段一一映射即可(也可按住Ctrl键拖拽表名映射),如图:

Image

数据返回

在ESB业务输出模块,我们配置返回插入行的ID,这里我们把返回的ID显示在表单上对应的字段,如图:

Image

到这里,在流程上的调用配置就完成了,保存发布流程:数据库集成。

调用

在流程门户,直接提交表单发起流程:

Image

提交后,调用ESB配置的MySQL-Insert,返回13,代表插入数据成功,且插入行的ID是13,如图:

Image

# MySQL Select

MySQL Select主要用于获取数据,支持分页和动态排序。

集成场景

使用ESB数据源,从MySQL数据库中获取数据→在表单上使用获取的数据。

Image

# 配置从MySQL获取数据

配置从MySQL获取数据

在【ESB数据源】模块,点击【添加】,进入ESB数据源配置界面,拖出【MySQL Select】节点进行配置,如图:

Image

在【常规】配置界面,选择连接后,使用SQL查询语句获取物品信息,如图:

Image

在【调用】界面,默认列出了分页用到的参数和在SQL语句中定义的查询参数Name,如图:

Image

在左侧点击复制参数,快速同步本关卡的输入参数到ESB数据源参数,如图:

Image

这里我们要把搜索条件在开窗查询里显示在前台,所以这里也可以直接编辑把参数改的友好一些,如图:

Image

配置分页、排序和查询参数,如图:

Image

在【返回】界面,默认列出SQL语句中查询的列字段,如图:

Image

点击复制架构,复制左侧查询参数,也可以手动编辑,如图:

Image

将左侧查询返回参数一一映射到右侧,如图:

Image

到这里,使用MySQL Select获取数据就配置完成,点击保存为:MySQL Select-物品列表。

点击测试,成功获取物品数据,如图:

Image

# 在表单上使用获取的数据

在表单设计器上配置ESB数据源

Image

Image

在表单上使用ESB数据源

Image

Image

# MySQL Cache

Cache用于将结果集缓存到表,比如:用于定期更新第三方系统数据到指定表。

集成场景

使用ESB输出流,配置Cache缓存数据→在流程上调用执行配置的Cache,缓存数据到指定表。

Image

# 配置使用Cache

以缓存查询出的数据到指定表为例,演示Cache的使用。

在【ESB输出流】模块,点击【添加】,进入ESB业务输出配置界面,依次拖出【MySQL Select】、【MySQL Cache】节点进行配置,如图:

Image

在【常规】配置界面,选择连接后,首先配置Select节点使用SQL查询语句获取数据,如图:

Image

【调用】界面,无需配置。在【返回】界面,将返回的数据存放在Variables中,并在Variables中手动创建对应的对象和字段,如图:

Image

配置Cache节点,选择连接和要缓存到表的表名,如图:

Image

在【调用】界面,把存放在变量Variables中的数据依次映射到要缓存的表,如图:

Image

在【返回】界面,如果需要可以把影响的行数返回,如图:

Image

到这里,使用MySQL Cache缓存数据到表就配置完成了,点击保存为:MySQL-Cache。

# 在流程上调用配置的Cache

在流程建模模块,拖出任务,切换为【调用ESB】节点,在【常规】配置界面,选择调用对象为在ESB业务输出模块配置的MySQL-Cache,如图:

Image

配置传参

这里无需配置,保持默认即可。

数据返回

把缓存数据影响行数返回并显示到表单上,如图:

Image

到这里,在流程上的调用配置就完成了,保存发布流程:数据库集成。

调用

在流程门户,直接提交表单发起流程:

Image

提交后,调用ESB配置的MySQL-Cache,返回13,代表缓存了13行数据到表,如图:

Image

可以在流程上配合时钟触发器,定期发起流程,调用ESB,用以定期更新第三方数据。

# MySQL 存储过程

存储过程提供了一个执行存储过程的一个窗口。

集成场景

使用ESB数据源,使用存储过程从MySQL Server数据库中获取数据→在表单上使用获取的数据。

Image

# 配置使用存储过程获取数据

配置使用存储过程从MySQL获取数据

在【ESB数据源】模块,点击【添加】,进入ESB数据源配置界面,拖出【MySQL 存储过程】节点进行配置,如图:

Image

在【常规】配置界面,选择连接和存储过程,如图:

Image

在【调用】界面,默认会列出分页用到的参数和在存储过程语句中定义的参数,这里我们这个例子只是简单的获取数据,没有实现分页和查询,所以删除左侧查询参数,其余保持默认即可s。如图:

Image

在【返回】界面,点击复制架构,复制左侧查询参数,并将左侧查询返回参数一一映射到右侧,如图:

Image

到这里,使用MySQL 存储过程获取数据就配置完成,点击保存为:MySQL-存储过程。

点击测试,成功获取数据,如图:

Image

# 在表单上使用获取的数据

在表单设计器上配置ESB数据源

Image

Image

在表单上使用ESB数据源

Image

Image