Connecting from Code
This section describes how to connect with the JDBC DriverManager or PingOneDataSource interfaces.
Connecting with the DriverManager
When connecting with the DriverManager class, the CData JDBC Driver for PingOne follows the JDBC convention: First, load the PingOne driver class. Then, make a connection.
Load the Driver
The following step is optional per the JDBC 4.0 specification.Class.forName("cdata.jdbc.pingone.PingOneDriver");
Establish a Connection
Provide the connection string with the getConnection method of the static DriverManager class. Start the connection string with "jdbc:pingone:". A typical connection string is the following:
Connection conn = DriverManager.getConnection("jdbc:pingone:AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;WorkerAppEnvironmentId=eebc33a8-xxxx-4f3a-yyyy-d3e5262fd49e;Region=US;OAuthClientId=client_id;OAuthClientSecret=client_secret;");
Alternatively, you can prepare the connection options using a Properties object. Pass the Properties object to the DriverManager.
Properties properties = new Properties();
properties.setProperty("AuthScheme", "OAuth");
properties.setProperty("InitiateOAuth", "GETANDREFRESH");
properties.setProperty("WorkerAppEnvironmentId", "eebc33a8-xxxx-4f3a-yyyy-d3e5262fd49e");
properties.setProperty("Region", "US");
properties.setProperty("OAuthClientId", "client_id");
properties.setProperty("OAuthClientSecret", "client_secret");
Connection connection = DriverManager.getConnection("jdbc:pingone:", properties);
Connecting with the PingOneDataSource Class
You can use the PingOneDataSource class to create pooled connections, as shown in the following example. See Connection Pooling for more information.
The following example instantiates a pooled Connection object:
PingOneDataSource ds = new PingOneDataSource("jdbc:pingone:UseConnectionPooling=true;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;WorkerAppEnvironmentId=eebc33a8-xxxx-4f3a-yyyy-d3e5262fd49e;Region=US;OAuthClientId=client_id;OAuthClientSecret=client_secret;");
Connection conn = ds.getConnection();