Welcome to the Progress DataDirect Autonomous REST Connector for JDBC
What's new in this release?
Quick starts
Requirements
Version string information
Driver and DataSource classes
Connection URL
Connection properties
Mapping objects to tables
Normalizing JSON maps
Determining the primary key
Data types
getTypeInfo()
Contacting Technical Support
Using the driver
Setting up the driver
Configuring the relational map
Using the Sample property method
Using the input REST file method
Creating an input REST file
Modifying the relational view
Designating the primary key
Adding/removing objects
Mapping new native objects to a table
Connecting from an application
Setting the classpath
Connecting using the JDBC Driver Manager
Passing the connection URL
Testing the connection
Connecting using data sources
How data sources are implemented
Creating data sources
Example data source
Calling a data source in an application
Testing a data source connection
Using connection properties
Required properties
Mapping properties
Basic authentication properties
HTTP header authentication properties
OAuth 2.0 properties
URL parameter authentication properties
Custom authentication request properties
Data encryption properties
Proxy server properties
Web service properties
Data type handling properties
Timeout properties
Statement pooling properties
Additional properties
Connecting through a proxy server
Performance considerations
Authentication
Basic authentication
HTTP header authentication
URL parameter authentication
OAuth 2.0 authentication
Access token flow
Authorization code grant
Client credentials grant
Password grant
Refresh token grant
Custom authentication
Data encryption
Configuring SSL encryption
Configuring SSL server authentication
Configuring SSL client authentication
Identifiers
IP addresses
Timeouts
SQL escape sequences
Isolation levels
Scrollable cursors
Unicode support
Error handling
Parameter metadata support
ResultSet metaData support
Rowset support
Connection Pool Manager
How connection pooling works
The connection pool environment
The DataDirect Connection Pool Manager
Using a connection pool DataSource object
Implementing DataDirect connection pooling
Creating a driver DataSource object
Creating the connection pool
Configuring the connection pool
Configuring the maximum pool size
Connecting using a connection pool
Closing the connection pool
Checking the Pool Manager version
Enabling Pool Manager tracing
Connection Pool Manager interfaces
PooledConnectionDataSourceFactory
PooledConnectionDataSource
ConnectionPoolMonitor
Statement Pool Monitor
Using DataDirect-Specific methods to access the Statement Pool Monitor
Using the poolEntries method
Generating a list of statements in the Statement Pool
Using JMX to access the Statement Pool Monitor
Importing statements into a statement pool
Clearing all statements in a statement pool
Freezing and unfreezing the statement pool
Generating a statement pool export file
DataDirect Statement Pool Monitor interfaces and classes
ExtStatementPoolMonitor class
ExtStatementPoolMonitorMBean interface
DataDirect Test
DataDirect Test tutorial
Configuring DataDirect Test
Starting DataDirect Test
Connecting using DataDirect Test
Connecting using a data source
Connecting using database selection
Executing a simple Select statement
Executing a prepared statement
Retrieving database metadata
Scrolling through a result set
Batch execution on a prepared statement
Returning ParameterMetaData
Establishing savepoints
Updatable result sets
Deleting a row
Inserting a row
Updating a row
Retrieving Large Object data
Tracking JDBC calls with DataDirect Spy
Enabling DataDirect Spy
Using the JDBC DriverManager
Using JDBC Data Sources
DataDirect Spy attributes
Required permissions for Java SE with the standard Security Manager enabled
Permissions for establishing connections
Granting access to Java properties
Granting access to temporary files
Connection property descriptions
AccessToken
AuthenticationMethod
AuthHeader
AuthParam
ClientID
ClientSecret
Config
ConvertNull
CreateMap
CryptoProtocolVersion
CustomAuthParams
DebugRecord
EncryptionMethod
FetchSize
HostNameInCertificate
ImportStatementPool
InsensitiveResultSetBufferSize
JDBCBehavior
KeyPassword
KeyStore
KeyStorePassword
LogConfigFile
LoginTimeout
LogoffURI
MaxPooledStatements
OAuthCode
Password
PortNumber
ProxyHost
ProxyPassword
ProxyPort
ProxyUser
ReadAhead
RedirectURI
RefreshDirtyCache
RefreshSchema
RefreshToken
RegisterStatementPoolMonitorMBean
Sample
SchemaMap
Scope
SecurityToken
ServerName
SpyAttributes
StmtCallLimit
StmtCallLimitBehavior
Table
TokenURI
TrustStore
TrustStorePassword
User
ValidateServerCertificate
WSFetchSize
WSPoolSize
WSRetryCount
WSTimeout
Input REST file syntax
HTTP response code processing
OAuth 2.0 authentication
Custom authentication requests
Table definition entries
Paging
Using templates for paging parameters
REST model parsing
POST requests
Requests with custom HTTP headers
Query paths
Requests with unparameterized paths
Requests with parameterized paths
Requests with query parameters
Arrays of endpoints
Column names
Data type mapping
Primary key
Columns as an array
Columns as a key-value map
Columns with nested objects
Date, time, and timestamp formats
Subfields
Columns as HTTP headers
Filtering and URI parameters
Example input REST file
Troubleshooting
Troubleshooting your application
Turning on and off DataDirect Spy logging
DataDirect Spy log example
Troubleshooting connection pooling
Enabling tracing with the setTracing method
Pool Manager Trace file example
Troubleshooting statement pooling
Generating an export file with the exportStatement method
Statement pool export file example
Using Java logging
Logging components
JDBC API logger
SQL Engine logger
Web Service Adapter logger
Configuring logging
Using the JVM for logging
Using the driver for logging
Enabling Debug Record Mode
Supported SQL statements and extensions
Alter Session (EXT)
Refresh Map (EXT)
Select
Select clause
Aggregate functions
From clause
Join in a From clause
Subquery in a From clause
Where clause
Group By clause
Having clause
Union operator
Intersect operator
Except and Minus operators
Order By clause
Limit clause
SQL expressions
Column names
Literals
Character string literals
Numeric literals
Binary literals
Date/Time literals
Integer literals
Operators
Unary operator
Binary operator
Arithmetic operators
Concatenation operator
Comparison operators
Logical operators
Operator precedence
Functions
Conditions
Subqueries
IN predicate
EXISTS predicate
UNIQUE predicate
Correlated subqueries
SQL escape sequences for JDBC
Date, time, and timestamp escape sequences
Scalar functions
Outer Join escape sequences
LIKE escape character sequence for wildcards
JDBC support
Supported functionality
Array
Blob
CallableStatement
Clob
Connection
ConnectionEventListener
ConnectionPoolDataSource
DatabaseMetaData
DataSource
Driver
ParameterMetaData
PooledConnection
PreparedStatement
Ref
ResultSet
ResultSetMetaData
RowSet
SavePoint
Statement
StatementEventListener
Struct
XAConnection
XADataSource
XAResource
JDBC extensions
Using JDBC wrapper methods to access JDBC extensions
DatabaseMetaData interface
ExtConnection interface
ExtDatabaseMetaData interface
ExtLogControl class
Designing JDBC applications for performance optimization
Using database metadata methods
Minimizing the use of database metadata methods
Avoiding search patterns
Using a dummy query to determine table characteristics
Returning data
Returning long data
Reducing the size of returned data
Choosing the right data type
Retrieving result sets
Selecting JDBC objects and methods
Using parameter markers as arguments to stored procedures
Using the statement object instead of the PreparedStatement object
Using batches instead of prepared statements
Choosing the right cursor
Using get methods effectively
Retrieving auto-generated keys
Managing connections and updates
Managing connections
Managing commits in transactions
Choosing the right transaction model
Using updateXXX methods
Using getBestRowIdentifier
Glossary
authentication
bulk load
client authentication
client load balancing
connection pooling
connection retry
connection URL
DataDirect Connection Pool Manager
DataDirect DB2 Package Manager
DataDirect Spy
DataDirect Test
data source
Driver Manager
failover
index
isolation level
J2EE
JDBC data source
JNDI
JTA
Kerberos
load balancing
locking level
NTLM authentication
OS authentication
reauthentication
resource adapter
Secure Socket Layer
SSL client and server authentication
Unicode
user ID and password authentication
Copyright
Welcome to the Progress DataDirect Autonomous REST Connector for JDBC
Copyright
connection_pool
statement_pool
datadirect_test
datadirect_spy
sql_escapes
jdbc_support
application_performance