Changes in This Release for Oracle Database JDBC Developer's Guide

This preface contains:

Changes in Oracle Database 19c

The following are changes in Oracle Database JDBC Developer's Guide for Oracle Database 19c.

New Features

The following features are new in this release:

  • Java library for Reactive Streams Ingestion

    See Support for Reactive Streams Ingestion

  • Enhancement to Application Continuity

    See Support for Transparent Application Continuity

  • Support for Easy Connect Naming Syntax (EZConnect format URL) Improvements

    Starting with Oracle Database Release 19c, the easy connect naming syntax is extended and the connection identifier now has the following format:

    [[protocol:]//]host1[,host12,host13][:port1][,host2:port2][/service_name][:server]
    [/instance_name][?[wallet_location=<dir>][&ssl_server_cert_dn="LongDN"],…]

    JDBC supports this enhancement and you can use JDBC URLs like the following:

    jdbc:oracle:thin:@tcps://example1.com:1522/
    wkrfs4xeqva1jcu_sqldev_example2.com?wallet_location=.
  • Starting with Oracle Database Release 19c, all JDBC properties can be set within the JDBC URL. For example, you can use the following JDBC URL for enabling the implicit statement cache size and setting its value to 100:
    jdbc:oracle:thin:@(description=
          (address=(protocol=tcps)(port=1522)(host=example1.com))
          (connect_data=(service_name=example2.com)))?oracle.jdbc.implicitStatementCacheSize=100
  • Support for hostname based DN verification

    Hostname verification is a part of the HTTPS protocol that involves a server identity check to ensure that the client is talking to the correct server and has not been redirected as part of a middle attack. Starting from Oracle Database 19c release, JDBC drivers support hostname based DN verification.

    If the oracle.net.ssl_server_dn_match parameter is set to true, and if ssl_server_cert_dn parameter value is not provided in the URL, then the driver uses the hostname of the server to validate the DN in the server certificate. Server DN matching is used for mutual authentication during the SSL handshake. You can set it in the following way:

    oracle.net.ssl_server_dn_match=true system property

    Note:

    Hostname based DN verification is enabled by default for EZConnect format URLs, if you specify the protocol as tcps in the URL.

Deprecated Features

The following features are deprecated, and may be desupported in a future release:

  • The following APIs from the OraclePreparedStatement and OracleCallableStatement classes have been deprecated as part of enhanced support for Associative Arrays:

    • setPlsqlIndexTable

    • setPlsqlIndexTableAtName

    • registerIndexTableOutParameter

    • getOraclePlsqlIndexTable

    • getPlsqlIndexTable

  • Concrete classes in the oracle.sql package

    The concrete classes in the oracle.sql package are deprecated. Use the new JDBC interfaces instead of these classes.

    See MoS Note 1364193.1 for more information about these interfaces.

  • The oracle.jdbc.rowset package is deprecated. Oracle recommends that you use the Standard JDBC RowSet package to replace this feature.

  • defineColumnType method

    Most of the variants of the defineColumnType method are deprecated. The supported variants are for:

    • LOB to LONG conversions

    • Configure the LOB prefetch size

    See the JDBC Javadoc for more information.

  • CONNECTION_PROPERTY_STREAM_CHUNK_SIZE property

    See the JDBC Javadoc for more information.

  • Oracle Update Batching

    Oracle update batching was deprecated in Oracle Database 12c Release 1 (12.1). Since Oracle Database 12c Release 2 (12.2), Oracle update batching is a no operation code (no-op). This means that if you implement Oracle update batching in your application, using the Oracle Database 19c JDBC driver, then the specified batch size is not set and results in a batch size of 1. With this batch setting, your application processes one row at a time. Oracle strongly recommends that you use the standard JDBC batching if you are using the Oracle Database 19c JDBC driver.

    See Standard Update Batching section for more information.

  • EndToEndMetrics related APIs

    EndToEndMetrics related APIs are deprecated since Oracle Database 12c release 2 (12.2).

    See JDBC DMS Metrics for more information.