How do I get JDBC driver property information?

The example below show you how to get the information about the possible properties for the corresponding JDBC driver.

package org.kodejava.jdbc;

import java.sql.*;

public class DriverPropertyInfoDemo {
    private static final String URL = "jdbc:mysql://localhost/kodejava";

    public static void main(String[] args) {
        try {
            // Gets information about the possible properties for this
            // driver.
            Driver driver = DriverManager.getDriver(URL);
            DriverPropertyInfo[] props = driver.getPropertyInfo(URL, null);

            for (DriverPropertyInfo info : props) {
                System.out.println("Name       : " +;
                System.out.println("Description: " + info.description);
                System.out.println("Value      : " + info.value);

                String[] choices = info.choices;
                if (choices != null) {
                    StringBuilder sb = new StringBuilder("Choices    : ");
                    for (String choice : choices) {


        } catch (SQLException e) {

The example result of the code snippet above:

Name       : host
Description: Hostname of MySQL Server
Value      : localhost
Name       : port
Description: Port number of MySQL Server
Value      : 3306
Name       : dbname
Description: Database name;
Value      : kodejava
Name       : user
Description: Username to authenticate as
Value      : null
Name       : password
Description: Password to use for authentication
Value      : null
Name       : clientCertificateKeyStorePassword
Description: Password for the client certificates key store.
Value      : null
Name       : serverRSAPublicKeyFile
Description: File path to the server RSA public key file for sha256_password authentication. If not specified, the public key will be retrieved from the server.
Value      : null
Name       : cacheDefaultTimeZone
Description: Caches clients default time zone. This results in better performance when dealing with time zone conversions in Date and Time data types, however it wont be aware of time zone changes if they happen at runtime.
Value      : true
Choices    : TRUE,FALSE,YES,NO,

Maven dependencies


Maven Central

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.