OceanBase
English日本語简体中文
Docs Home
Products
Integrations
Release Notes

Databases

OceanBase DatabaseOceanBase Cloud OceanBase Best Practices

Tools

OceanBase Cloud PlatformOceanBase Migration ServiceOceanBase Developer CenterOceanBase Migration AssessmentOceanBase Admin ToolOceanBase Loader and DumperOceanBase DeployerKubernetes operator for OceanBaseOceanBase Diagnostic Tool OceanBase Binlog Service

Connectors and Middleware

OceanBase Database Proxy OceanBase Connector/C OceanBase Connector/J OceanBase Connector/ODBC OceanBase Connector/NETOceanBase Command-Line Client

Databases

OceanBase DatabaseOceanBase Cloud OceanBase Best Practices

Connectors and Middleware

OceanBase Database Proxy OceanBase Connector/C OceanBase Connector/J OceanBase Connector/ODBC OceanBase Connector/NETOceanBase Command-Line Client

Tools

OceanBase Cloud PlatformOceanBase Migration ServiceOceanBase Developer CenterOceanBase Migration AssessmentOceanBase Admin ToolOceanBase Loader and DumperOceanBase DeployerKubernetes operator for OceanBaseOceanBase Diagnostic Tool OceanBase Binlog Service
OceanBase DatabaseOceanBase Cloud ToolsConnectors and MiddlewareLifecycle Support Policy

OceanBase Connector/J

V2.4.19
  • What is OceanBase Connector J?
    • Overview of OceanBase Connector/J
    • Compatibility requirements
  • Install Driver
    • Install and load OceanBase Connector/J
  • Instructions
    • Quick start
      • Import packages
      • Establish a database connection
      • Create a Statement object
      • Run queries and retrieve ResultSet objects
      • Process ResultSet objects
      • Close ResultSet and Statement objects
      • Manage tables and data
      • Commit changes
      • Close a database connection
      • Examples
    • Data sources and URL
      • Data source overview
      • Database URL
      • clientInfoProvider
    • Java data streams
      • Overview of Java data streams
      • LONG and LONG RAW data types
      • Use LOBs
        • Overview of LOB data types
        • LOB data interface
        • LOB locator interface
      • CHAR, VARCHAR, and RAW data types
    • Statement caching
      • Overview of statement caching
      • Use statement caching
      • Reuse statement objects
    • Call a stored procedure
    • Handle SQL exceptions
    • Result set
      • Overview of result sets
      • Limitations
      • FetchSize
      • refreshRow
      • useCursorFetch
    • Batch processing
    • Failover and Load-Balancing
      • Failover and load balancing modes
      • LoadBalance strategies
      • Load balancing strategy configuration methods
      • Replication mode
    • Rich client
    • Logging
    • Network overheads
    • Show Trace
    • Security features
    • Troubleshooting
  • Reference
    • Features specific to the Oracle mode
      • Binary Protocol (Prepared Statements)
        • COM_STMT_PREPARE_EXECUTE
        • COM_STMT_SEND_PIECE_DATA
      • Call PL stored procedures
      • Scrollability of a result set
      • Use ARRAY and STRUCT classes
      • Distributed transactions
        • Overview
        • XA components
        • Distributed transaction examples
      • Obtain remarks
      • Data types supported in Oracle mode
      • Error messages in Oracle mode
    • Supported SQL and PL data types
    • Common APIs
      • Overview
      • java.sql.Connection
      • java.sql.CallableStatement
      • java.sql.DatabaseMetaData
      • java.sql.Driver
      • java.sql.PreparedStatement
      • java.sql.ParameterMetaData
      • java.sql.ResultSet
      • java.sql.ResultSetMetaData
      • java.sql.Statement
      • javax.sql.ConnectionPoolDataSource
      • javax.naming.Context
      • javax.sql.PooledConnection
      • com.oceanbase.jdbc.ObPrepareStatement
    • Behavior differences between JDBC strict compatibility mode and non-strict compatibility mode
  • Release Notes
    • V2.4
      • OceanBase Connector/J V2.4.19
      • OceanBase Connector/J V2.4.18
      • OceanBase Connector/J V2.4.17
      • OceanBase Connector/J V2.4.16
      • OceanBase Connector/J V2.4.15
      • OceanBase Connector/J V2.4.14
      • OceanBase Connector/J V2.4.13
      • OceanBase Connector/J V2.4.12
      • OceanBase Connector/J V2.4.11
      • OceanBase Connector/J V2.4.8
      • OceanBase Connector/J V2.4.5
      • OceanBase Connector/J V2.4.4
      • OceanBase Connector/J V2.4.3
      • OceanBase Connector/J V2.4.2
      • OceanBase Connector/J V2.4.1
      • OceanBase Connector/J V2.4.0
    • V2.2
      • OceanBase Connector/J V2.2.11
      • OceanBase Connector/J V2.2.10
      • OceanBase Connector/J V2.2.7
      • OceanBase Connector/J V2.2.6
      • OceanBase Connector/J V2.2.3
      • OceanBase Connector/J V2.2.0

Download PDF

Document Feedback
  1. Documentation Center
  2. OceanBase Connector/J
  3. V2.4.19

Use the clientInfoProvider connection attribute

Last Updated:2026-09-17 02:32:36

ClientInfo interface
OceanBase Connector/J
Recommendations
Procedure

The ClientInfo interface in the Connection class is used to manage and retrieve client connection information.

ClientInfo interface

The following table describes the methods of the ClientInfo interface.

Method
Description
getClientInfo() Returns a list of names and current values of all client information attributes supported by the driver.
getClientInfo(String name) Returns the value of the client information attribute specified by the name parameter.
setClientInfo(Properties properties) Sets the values of the client information attributes of the connection.
setClientInfo(String name, String value) Sets the value of the client information attribute specified by the name parameter to the value specified by the value parameter.

Note

Starting from OceanBase Connector/J 2.4.15, the general implementation of ClientInfo is compatible with the behaviors of mysql-jdbc and oracle-jdbc. The implementation is based on local storage and does not rely on the server-side capabilities.

OceanBase Connector/J

OceanBase Connector/J allows you to delegate the setClientInfo and getClientInfo calls of a connection to a custom implementation class by using the clientInfoProvider connection attribute. The interface of the custom implementation class is com.oceanbase.jdbc.ClientInfoProvider. This parameter applies to both MySQL and Oracle tenants. OceanBase Connector/J provides a built-in reference implementation DbmsApplicationInfoProvider, which is used to record client information to the GV$OB_PROCESSLIST view. To use this implementation, you must also use the DBMS_APPLICATION_INFO system package. If you do not configure the clientInfoProvider parameter, the default ClientInfo behavior is used.

OceanBase Connector/J is compatible with MySQL Connector/J (mysql-jdbc). The interface definitions are consistent. In a MySQL tenant, if you do not configure the clientInfoProvider parameter, the default behavior is compatible with mysql-jdbc.

Recommendations

  • If you want to use the default ClientInfo behavior, do not configure the clientInfoProvider parameter. If you want to use a custom behavior, configure the clientInfoProvider parameter and implement a custom provider. This parameter applies to both MySQL and Oracle tenants.

If you want to store client information to the server or expect custom behavior during the set/get ClientInfo calls, you can configure the clientInfoProvider parameter in the JDBC URL.

Procedure

  1. Create a custom ClientInfoProvider class that implements the com.oceanbase.jdbc.ClientInfoProvider interface and implements the methods of the interface.

    Method
    Description
    initialize(conn, properties) Initializes the current provider by passing in the current connection and related parameters.
    destroy() Releases the related resources.
    getClientInfo(conn) Corresponds to the getClientInfo() method of the Connection class.
    getClientInfo(conn, name) Corresponds to the Connection#getClientInfo(String) method.
    setClientInfo(conn, properties) Corresponds to the Connection#setClientInfo(Properties) method.
    setClientInfo(conn, name, value) Corresponds to the Connection#setClientInfo(String, String) method.
  2. Specify the full class name of the custom ClientInfoProvider class in the URL in the format of clientInfoProvider=ClientInfoProvider. This way, the setClientInfo and getClientInfo calls of the connection are delegated to the custom implementation class.

Previous topic

Database URL
Last

Next topic

Overview of Java data streams
Next
on this page
ClientInfo interface
OceanBase Connector/J
Recommendations
Procedure