The following properties apply exclusively to the Kodo JDBC back-end.
Property name:
kodo.jdbc.ConnectionDecorators
Resource adaptor config-property:
ConnectionDecorators
Default: -
Description: A comma-separated
list of plugin strings (see
Section 2.4, “Plugin Configuration”) describing
com.solarmetric.jdbc.ConnectionDecorator
instances to install on the connection factory.
These decorators can wrap connections passed from the underlying
DataSource
to add functionality. Kodo will
pass all connections through the list of decorators before using
them. Note that by default Kodo JPA/JDO employs all of the
built-in decorators in the
com.solarmetric.jdbc
package already; you
do not need to list them here.
Property name:
kodo.jdbc.DBDictionary
Resource adaptor config-property:
DBDictionary
Default: Based on the
kodo.ConnectionURL
and
kodo.ConnectionDriverName
Description: A plugin string
(see Section 2.4, “Plugin Configuration”)
describing the kodo.jdbc.sql.DBDictionary
to use
for database interaction. Kodo typically auto-configures the
dictionary based on the JDBC URL, but you may have to set this
property explicitly if you are
using an unrecognized driver, or to plug in your own dictionary
for a database Kodo JPA/JDO does not support out-of-the-box.
See Section 4.4, “Database Support” for details.
Property name:
kodo.jdbc.DriverDataSource
Resource adaptor config-property:
DriverDataSource
Default: pooling
Description: The alias or
full class name of the
kodo.jdbc.schema.DriverDataSource
implementation to use to wrap
JDBC Driver classes with javax.sql.DataSource instances.
The provided default implementation
(
kodo.jdbc.schema.KodoPoolingDataSource
,
will perform connection pooling as described at
Chapter 4, JDBC.
Property name:
kodo.jdbc.EagerFetchMode
Resource adaptor config-property:
EagerFetchMode
Default:
parallel
Possible values:
parallel
, join
,
none
Description: Optimizes how Kodo loads persistent relations. This setting can also be varied at runtime. See Section 5.7, “Eager Fetching” for details.
Property name:
kodo.jdbc.FetchDirection
Resource adaptor config-property:
FetchDirection
Default: forward
Possible values:
forward
, reverse
,
unknown
Description: The expected order in which query result lists will be accessed. This property can also be varied at runtime. See Section 4.11, “Large Result Sets” for details.
Property name:
kodo.jdbc.JDBCListeners
Resource adaptor config-property:
JDBCListeners
Default: -
Description: A comma-separated
list of plugin strings (see
Section 2.4, “Plugin Configuration”) describing
com.solarmetric.jdbc.JDBCListener
event listeners to install. These listeners will be notified
on various JDBC-related events. The
com.solarmetric.jdbc.PerformanceTracker
is one such listener that can be used to track JDBC
performance.
Property name:
kodo.jdbc.LRSSize
Resource adaptor config-property:
LRSSize
Default: query
Possible values:
query
, last
,
unknown
Description: The strategy to use to calculate the size of a result list. This property can also be varied at runtime. See Section 4.11, “Large Result Sets” for details.
Property name:
kodo.jdbc.MappingDefaults
Resource adaptor config-property:
MappingDefaults
Default: default
Possible values:
default
, jpa
,
kodo3
Description: A plugin string
(see Section 2.4, “Plugin Configuration”) describing the
kodo.jdbc.meta.MappingDefaults
to
use to define default column names, table names, and constraints
for your persistent classes. See
Section 7.5, “Mapping Factory” for details.
Property name:
kodo.jdbc.MappingFactory
Resource adaptor config-property:
MappingFactory
Default: -
Possible values:
jdo-orm
, jdo-table
,
jpa
, others
Description: A plugin string
(see Section 2.4, “Plugin Configuration”)
describing the
kodo.meta.MetaDataFactory
to
use to store and retrieve object-relational mapping information
for your persistent classes. See
Section 7.5, “Mapping Factory” for details.
Property name:
kodo.jdbc.ResultSetType
Resource adaptor config-property:
ResultSetType
Default: forward-only
Possible values:
forward-only
,
scroll-sensitive
,
scroll-insensitive
Description: The JDBC result set type to use when fetching result lists. This property can also be varied at runtime. See Section 4.11, “Large Result Sets” for details.
Property name:
kodo.jdbc.Schema
Resource adaptor config-property:
Schema
Default: -
Description: The default schema name to prepend to unqualified table names. Also, the schema in which Kodo will create new tables. See Section 4.12, “Default Schema” for details.
Property name:
kodo.jdbc.SchemaFactory
Resource adaptor config-property:
SchemaFactory
Default: dynamic
Possible values:
dynamic
, native
,
file
, table
, others
Description: A plugin string
(see Section 2.4, “Plugin Configuration”)
describing the
kodo.jdbc.schema.SchemaFactory
to
use to store and retrieve information about the database schema.
See Section 4.13.2, “Schema Factory” for details.
Property name:
kodo.jdbc.Schemas
Resource adaptor config-property:
Schemas
Default: -
Description: A comma-separated list of the schemas and/or tables used for your persistent data. See Section 4.13.1, “Schemas List” for details.
Property name:
kodo.jdbc.SQLFactory
Resource adaptor config-property:
SQLFactory
Default: default
Description: A plugin string
(see Section 2.4, “Plugin Configuration”)
describing the
kodo.jdbc.sql.SQLFactory
to
use to abstract common SQL constructs.
See Section 4.5, “SQLFactory Properties” for details.
Property name:
kodo.jdbc.SubclassFetchMode
Resource adaptor config-property:
SubclassFetchMode
Default: parallel
Possible values:
parallel
, join
,
none
Description: How to select subclass data when it is in other tables. This setting can also be varied at runtime. See Section 5.7, “Eager Fetching”.
Property name:
kodo.jdbc.SynchronizeMappings
Resource adaptor config-property:
SynchronizeMappings
Default: -
Description: Controls whether Kodo will attempt to run the mapping tool on all persistent classes to synchronize their mappings and schema at runtime. Useful for rapid test/debug cycles. See Section 7.1.4, “Runtime Forward Mapping” for more information.
Property name:
kodo.jdbc.TransactionIsolation
Resource adaptor config-property:
TransactionIsolation
Default: default
Possible values:
default
, none
,
read-committed
,
read-uncommitted
,
repeatable-read
, serializable
Description: The JDBC transaction isolation level to use. See Section 4.6, “Setting the Transaction Isolation” for details.
Property name:
kodo.jdbc.UpdateManager
Resource adaptor config-property:
UpdateManager
Default: default
Description: The full class
name of the
kodo.jdbc.kernel.UpdateManager
to use to flush persistent object changes
to the datastore. The provided default implementation is
kodo.jdbc.kernel.ConstraintUpdateManager
.