Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

...

You can append query options to the URI in the following format, ?option=value&option=value&...

Options

Div
classconfluenceTableSmall
Wiki Markup
{div:class=confluenceTableSmall} || Name || Default Value || Description || | {{readSize}} | {{0}} | The default maximum number of rows that can be read by a polling query. The default value is 0. | | {{statement.<xxx>}} | {{null}} | *Camel 2.1:* Sets additional options on the {{java.sql.Statement}} that is used behind the scenes to execute the queries. For instance, {{statement.maxRows=10}}. For detailed documentation, see the [{{java.sql.Statement}} javadoc|http://java.sun.com/j2se/1.5.0/docs/api/java/sql/Statement.html] documentation. | | {{useJDBC4ColumnNameAndLabelSemantics}} | {{true}} | *Camel 2.2:* Sets whether to use JDBC 4/3 column label/name semantics. You can use this option to turn it {{false}} in case you have issues with your JDBC driver to select data. This only applies when using {{SQL SELECT}} using aliases (e.g. {{SQL SELECT id as identifier, name as given_name from persons}}). | | {{resetAutoCommit}} | {{true}} | *Camel 2.9:* Camel will set the autoCommit on the JDBC connection to be false, commit the change after executed the statement and reset the autoCommit flag of the connection at the end, if the resetAutoCommit is true. If the JDBC connection doesn't support to reset the autoCommit flag, you can set the resetAutoCommit flag to be false, and Camel will not try to reset the autoCommit flag.| | {{allowNamedParameters}} | {{true}} | *Camel 2.12:* Whether to allow using named parameters in the queries. | | {{prepareStatementStrategy}} | | *Camel 2.12:* Allows to plugin to use a custom {{

Name

Default Value

Description

readSize

0

The default maximum number of rows that can be read by a polling query. The default value is 0.

statement.<xxx>

null

Camel 2.1: Sets additional options on the java.sql.Statement that is used behind the scenes to execute the queries. For instance, statement.maxRows=10. For detailed documentation, see the java.sql.Statement javadoc documentation.

useJDBC4ColumnNameAndLabelSemantics

true

Camel 2.2: Sets whether to use JDBC 4/3 column label/name semantics. You can use this option to turn it false in case you have issues with your JDBC driver to select data. This only applies when using SQL SELECT using aliases (e.g. SQL SELECT id as identifier, name as given_name from persons).

resetAutoCommit

true

Camel 2.9: Camel will set the autoCommit on the JDBC connection to be false, commit the change after executed the statement and reset the autoCommit flag of the connection at the end, if the resetAutoCommit is true. If the JDBC connection doesn't support to reset the autoCommit flag, you can set the resetAutoCommit flag to be false, and Camel will not try to reset the autoCommit flag.

allowNamedParameters

true

Camel 2.12: Whether to allow using named parameters in the queries.

prepareStatementStrategy

 

Camel 2.12: Allows to plugin to use a custom

org.apache.camel.component.jdbc.JdbcPrepareStatementStrategy

}}

to

control

preparation

of

the

query

and

prepared

statement.

| | {{useHeadersAsParameters}} | {{false}} | *Camel

useHeadersAsParameters

false

Camel 2.12:

*

Set

this

option

to

{{

true

}}

to

use

the

{{

prepareStatementStrategy

}}

with

named

parameters.

This

allows

to

define

queries

with

named

placeholders,

and

use

headers

with

the

dynamic

values

for

the

query

placeholders.

| | {{outputType}} | {{SelectList}} | *Camel

outputType

SelectList

Camel 2.12.1:

*

Make

the

output

of

the

producer

to

SelectList

as

List

of

Map,

or

SelectOne

as

single

Java

object

in

the

following

way:


a)

If

the

query

has

only

single

column,

then

that

JDBC

Column

object

is

returned.

(such

as

SELECT

COUNT(

*

)

FROM

PROJECT

will

return

a

Long

object.


b)

If

the

query

has

more

than

one

column,

then

it

will

return

a

Map

of

that

result.


c)

If

the

outputClass

is

set,

then

it

will

convert

the

query

result

into

an

Java

bean

object

by

calling

all

the

setters

that

match

the

column

names.

It

will

assume

your

class

has

a

default

constructor

to

create

instance

with.

From

*

Camel

2.14

*

onwards

then

SelectList

is

also

supported.


d)

If

the

query

resulted

in

more

than

one

rows,

it

throws

an

non-unique

result

exception.

*


Camel

2.14.0:

*

New

{{

StreamList

}}

output

type

value

that

streams

the

result

of

the

query

using

an

{{

Iterator<Map<String,

Object>>

}}

,

it

can

be

used

along

with

the

[]

EIP.

| | {{outputClass}} | {{null}} | *Camel

outputClass

null

Camel 2.12.1:

*

Specify

the

full

package

and

class

name

to

use

as

conversion

when

outputType=SelectOne.

From

*

Camel

2.14

*

onwards

then

SelectList

is

also

supported.

| | {{beanRowMapper}} | | *Camel

beanRowMapper

 

Camel 2.12.1:

*

To

use

a

custom

{{

org.apache.camel.component.jdbc.BeanRowMapper

}}

when

using

{{

outputClass

}}

.

The

default

implementation

will

lower

case

the

row

names

and

skip

underscores,

and

dashes.

For

example

{{

"CUST_ID"

}}

is

mapped

as

{{

"custId"

}}

.

| {div}

Result

By default the result is returned in the OUT body as an ArrayList<HashMap<String, Object>>. The List object contains the list of rows and the Map objects contain each row with the String key as the column name. You can use the option outputType to control the result.

...