第 236 章 MyBatis Bean Component

可作为 Camel 版本 2.22 可用

mybatis-bean: 组件允许您使用 MyBatis bean 注解来查询、插入、更新和删除关系数据库中的数据。

此组件 只能 用作制作者。如果您想要使用 MyBatis,则使用常规 mybatis 组件。

Maven 用户需要将以下依赖项添加到其 pom.xml 中:

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-mybatis</artifactId>
    <version>x.x.x</version>
    <!-- use the same version as your Camel core version -->
</dependency>

此组件默认从 classpath 根加载 MyBatis SqlMapConfig 文件,其预期名称为 SqlMapConfig.xml
如果该文件位于其他位置,则需要在 MyBatisComponent 组件上配置 configurationUri 选项。

236.1. 选项

MyBatis Bean 组件支持 3 个选项,它们如下所列。

名称描述默认类型

sqlSessionFactory (advanced)

使用 SqlSessionFactory

 

SqlSessionFactory

configurationUri (producer)

MyBatis xml 配置文件的位置。默认值为:SqlMapConfig.xml 从 classpath 加载

SqlMapConfig.xml

字符串

resolveProperty Placeholders (advanced)

启动时,组件是否应自行解析属性占位符。只有 String 类型的属性才能使用属性占位符。

true

布尔值

MyBatis Bean 端点使用 URI 语法配置:

mybatis-bean:beanName:methodName

使用以下路径和查询参数:

236.1.1. 路径名(2 参数):

名称描述默认类型

beanName

使用 MyBatis 注释 需要 Bean 的 Name。这可以通过类型别名或 FQN 类名称。

 

字符串

methodName

对具有要执行的 SQL 查询的 bean 的方法 必填 名称。

 

字符串

236.1.2. 查询参数(4 参数):

名称描述默认类型

executorType (producer)

执行语句时要使用的 executor 类型。简单 - executor no special. reuse - executor reuses prepared 语句。batch - executor 重复使用语句和批处理更新。

简单

ExecutorType

inputHeader (producer)

用户 用户,输入参数的标头值,而不是消息正文。默认情况下,输入Header == null,以及输入参数从消息正文中获取。如果设置了输出Header,则使用值,并将从标头中而不是正文获取查询参数。

 

字符串

outputHeader (producer)

将查询结果存储在标题中,而不是消息正文。默认情况下,输出Header == null,并且查询结果存储在消息正文中,消息正文中的所有现有内容将被丢弃。如果设置了输出Header,则值用作存储查询结果的标头名称,并保留原始消息正文。设置输出标头也会省略默认的 CamelMyBatisResult 标头,因为它与所有时间的输出标头相同。

 

字符串

同步 (高级)

设置同步处理是否应当严格使用,还是允许 Camel 使用异步处理(如果受支持)。

false

布尔值