Develop Java applications with Oracle Database

Develop Java applications with Oracle Database

Using JDBC, the Universal Connection Pool (UCP) and the embedded JVM (OJVM) through technical articles, white papers, code samples, FAQs and more.

Show Me How

Getting Started with JDBC

Connect to ATP with JDBC

Database Embedded JVM (OJVM)

Database Embedded JVM (OJVM)

 

JDBC and UCP Capabilities

Whether on the cloud or on-premises, developing Java applications with Oracle Autonomous Databases is fast and simple. Java developers can take advantage of the latest features, such as Oracle Autonomous Database, performance self-tuning, high availability, in-memory processing, and pluggable databases to design and develop a high performant, scalable, and reliable applications. Oracle Database 19c  and 18c JDBC drivers introduce a new property file (ojdbc.properties) along with few other features that simplifies the connection to Autonomous Transaction Processing (ATP) and Autonomous Data Warehousing (ADW).

Java Standards Supports JDK8, JDK11, JDK17, JDK19, and JDK21 and implements JDBC 4.2 and JDBC 4.3 by ojdbc11.jar (23c, 21c) and ojdbc10.jar (19c). Universal Connection Pool (ucp.jar) for Java applications. Virtual Threads (Project Loom), Asynchronous Extension to Universal Connection Pool, JDBC Reactive Extensions - A set of methods that extend the JDBC standard to offer asynchronous database access.
Connection
Support for multi cloud centralized config providers (Azure, OCI, and WebServer), Support for OCI IAM token authentication, Support for OAUTH2 for DB authentication and Azure AD integration, Support for passwords up to 1024 bytes, Easy Connect Plus for easier TCPS connections and passing connection properties, ojdbc.properties file to set connection properties, multiple ways for setting TNS_ADMIN, setting server's domain name (DN) cert as a connection property, and support of new wallet property (my_wallet_directory)
Performance Java and Pipelined Database Operations, JDBC Standard Batching APIs are enhanced to use database pipeline under the covers, Reactive Streams Ingest (RSI) for streaming data into the Oracle Database (21c and above), RSI in Data Loader mode (23c), JDBC and UCP Reactive Extensions, Oracle connection manager (CMAN) in traffic director mode (CMAN-TDM)
Scalability Support for Directory-based Sharding and Split Partition set, Java Data Source for Sharded Databases Access, UCP support for XA transactions with Oracle Database Sharding, Oracle RAC data affinity, shard routing APIs for mid-tiers, shared pool for multitenant and sharded database, and run time load balancing (RLB)
High Availability Session Migration with AC for Batch and Templates (i.e., stable restorable attributes), Transparent Application Continuity (TAC), support of concrete classes with Application Continuity (AC), AC with DRCP, FAN support, and Transaction Guard (TG)
Security Support for RADIUS and RADIUS two-factor authentication, Support for Kerberos Constrained Delegation, Automatic Provider Resolution (OraclePKIProvider), support for Key Store Service (KSS); HTTPS proxy support, TLSv1.2 Support, Kerberos, Oracle Wallets, and JKS
Data Types Native Boolean datatype in oracle.jdbc.OracleType, Support for JSON-relational duality views, Support for New JSON Data Type, Accessibility to PL/SQL associative arrays, Oracle REF CURSOR as IN bind parameter.
Diagnosability and Observability Self-driven diagnosability (a single ojdbcX.jar for production, debug, and metrics from 23c), Diagnose on first failure (records critical execution state in memory and dumps the recording on error)
 
Test Drive Oracle Database 19c in the Cloud