173.2. 选项
JDBC 组件支持 2 个选项,如下所列。
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
DataSource (producer) | 使用 DataSource 实例,而不是按名称从 registry 查找数据源。 | DataSource | |
resolveProperty Placeholders (advanced) | 组件是否应在启动时解析属性占位符。只有 String 类型的属性可以使用属性占位符。 | true | 布尔值 |
JDBC 端点使用 URI 语法进行配置:
jdbc:dataSourceName
使用以下路径和查询参数:
173.2.1. 路径参数(1 参数):
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
dataSourceName | 在 Registry 中查找的数据源的名称。如果名称是 dataSource 或 default,则 Camel 将尝试从 registry 中查找默认 DataSource,这意味着如果只找到一个 DataSource 实例,则将使用此 DataSource。 | 字符串 |
173.2.2. 查询参数(13 参数):
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
allowNamedParameters (producer) | 是否允许在查询中使用命名参数。 | true | 布尔值 |
outputClass (producer) | 指定在 outputType=SelectOne 或 SelectList 时使用的完整软件包和类名称。 | 字符串 | |
outputType (producer) | 确定生成者应使用的输出。 | SelectList | JdbcOutputType |
parameters (producer) | java.sql.Statement 的可选参数。例如,要设置 maxRows、fetchSize 等。 | Map | |
readSize (producer) | 轮询查询可读取的默认最大行数。默认值为 0。 | int | |
resetAutoCommit (producer) | Camel 会将 JDBC 连接上的 autoCommit 设置为 false,在执行声明后提交更改,并在结尾重置连接的 autoCommit 标志(如果 resetAutoCommit 为 true)。如果 JDBC 连接不支持重置 autoCommit 标志,您可以将 resetAutoCommit 标志设置为 false,并且 Camel 不会尝试重置 autoCommit 标志。与 XA 事务一起使用时,您可能需要将其设置为 false,以便事务管理器负责提交此 tx。 | true | 布尔值 |
transacted (producer) | 事务是否使用。 | false | 布尔值 |
useGetBytesForBlob (producer) | 将 BLOB 列读取为字节而不是字符串数据。对于某些数据库(如 Oracle),这可能是必需的,其中您必须将 BLOB 列作为字节读取。 | false | 布尔值 |
useHeadersAsParameters (producer) | 将这个选项设置为 true 来使用带有命名参数的 prepareStatementStrategy。这允许使用命名占位符定义查询,并将标头与查询占位符的动态值一起使用。 | false | 布尔值 |
useJDBC4ColumnNameAnd LabelSemantics (producer) | 设置在检索列名称时是否使用 JDBC 4 还是 JDBC 3.0 或旧的语义。JDBC 4.0 使用 columnLabel 获取列名称,因为 JDBC 3.0 使用 columnName 或 columnLabel。不幸的是,JDBC 驱动程序的行为不同,如果您遇到这个组件的问题,则可以使用这个选项来排除 JDBC 驱动程序的问题。 | true | 布尔值 |
beanRowMapper (advanced) | 在使用 outputClass 时,使用自定义 org.apache.camel.component.jdbc.BeanRowMapper。默认实现会降低行名,并跳过下划线和横线。例如,CUST_ID 映射为 custId。 | BeanRowMapper | |
prepareStatementStrategy (advanced) | 允许插件使用自定义 org.apache.camel.component.jdbc.JdbcPrepareStatementStrategy 来控制查询和准备语句的准备。 | JdbcPrepareStatement Strategy | |
同步 (高级) | 设置是否应严格使用同步处理,还是允许 Camel 使用异步处理(如果支持)。 | false | 布尔值 |