Connecting from Code
This section describes how to connect with the JDBC DriverManager or RaiserEdgeNXTDataSource interfaces.
Connecting with the DriverManager
When connecting with the DriverManager class, the CData JDBC Driver for Blackbaud Raisers Edge NXT follows the JDBC convention: First, load the RaiserEdgeNXT driver class. Then, make a connection.
Load the Driver
The following step is optional per the JDBC 4.0 specification.Class.forName("cdata.jdbc.raiseredgenxt.RaiserEdgeNXTDriver");
Establish a Connection
Provide the connection string with the getConnection method of the static DriverManager class. Start the connection string with "jdbc:raiseredgenxt:". A typical connection string is the following:
Connection conn = DriverManager.getConnection("jdbc:raiseredgenxt:InitiateOAuth=GETANDREFRESH;SubscriptionKey=MySubscriptionKey;OAuthClientId=MyOAuthClientId;OAuthClientSecret=MyOAuthClientSecret;CallbackURL=http://localhost:33333;");Alternatively, you can prepare the connection options using a Properties object. Pass the Properties object to the DriverManager.
Properties prop = new Properties(); prop.setProperty("SubscriptionKey","MySubscriptionKey"); prop.setProperty("InitiateOAuth","GETANDREFRESH"); prop.setProperty("OAuthClientId","MyOAuthClientId"); prop.setProperty("OAuthClientSecret","MyOAuthClientSecret"); prop.setProperty("CallbackURL","http://localhost:33333"); Connection conn = DriverManager.getConnection("jdbc:raiseredgenxt:",prop);
Connecting with the RaiserEdgeNXTDataSource Class
You can use the RaiserEdgeNXTDataSource 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:
RaiserEdgeNXTDataSource ds = new RaiserEdgeNXTDataSource("jdbc:raiseredgenxt:UseConnectionPooling=true;InitiateOAuth=GETANDREFRESH;SubscriptionKey=MySubscriptionKey;OAuthClientId=MyOAuthClientId;OAuthClientSecret=MyOAuthClientSecret;CallbackURL=http://localhost:33333;");
Connection conn = ds.getConnection();