![]() |
VOOZH | about |
JRuby is a high-performance, stable, fully threaded Java implementation of the Ruby programming language. The CData JDBC Driver for HubDB makes it easy to integrate connectivity to live HubDB data in JRuby. This article shows how to create a simple JRuby app that connects to HubDB data, executes a query, and displays the results.
Before creating the app, note the installation location for the JAR file for the JDBC Driver (typically C:\Program Files\CData\CData JDBC Driver for HubDB\lib).
JRuby natively supports JDBC, so you can easily connect to HubDB and execute SQL queries. Initialize the JDBC connection with the getConnection function of the java.sql.DriverManager class.
There are two authentication methods available for connecting to HubDB data source: OAuth Authentication with a public HubSpot application and authentication with a Private application token.
AuthScheme must be set to "OAuth" in all OAuth flows. Be sure to review the Help documentation for the required connection properties for you specific authentication needs (desktop applications, web applications, and headless machines).
Follow the steps below to register an application and obtain the OAuth client credentials:
Under Scopes, select any scopes you need for your application's intended functionality.
A minimum of the following scopes is required to access tables:
To connect using a HubSpot private application token, set the AuthScheme property to "PrivateApp."
You can generate a private application token by following the steps below:
To connect, set PrivateAppToken to the private application token you retrieved.
For assistance in constructing the JDBC URL, use the connection string designer built into the HubDB JDBC Driver. Either double-click the JAR file or execute the jar file from the command-line.
java -jar cdata.jdbc.hubdb.jar
Fill in the connection properties and copy the connection string to the clipboard.
👁 Using the built-in connection string designer to generate a JDBC URL (Salesforce is shown.)Below is a typical JDBC connection string for HubDB:
jdbc:hubdb:AuthScheme=OAuth;OAuthClientID=MyOAuthClientID;OAuthClientSecret=MyOAuthClientSecret;CallbackURL=http://localhost:33333;InitiateOAuth=GETANDREFRESH;
Create a new Ruby file (for example: HubDBSelect.rb) and open it in a text editor. Copy the following code into your file:
require 'java'
require 'rubygems'
require 'C:/Program Files/CData/CData JDBC Driver for HubDB 2018/lib/cdata.jdbc.hubdb.jar'
url = "jdbc:hubdb:AuthScheme=OAuth;OAuthClientID=MyOAuthClientID;OAuthClientSecret=MyOAuthClientSecret;CallbackURL=http://localhost:33333;InitiateOAuth=GETANDREFRESH;"
conn = java.sql.DriverManager.getConnection(url)
stmt = conn.createStatement
rs = stmt.executeQuery("SELECT PartitionKey, Name FROM NorthwindProducts")
while (rs.next) do
puts rs.getString(1) + ' ' + rs.getString(2)
end
With the file completed, you are ready to display your HubDB data with JRuby. To do so, simply run your file from the command line:
jruby -S HubDBSelect.rb
Writing SQL-92 queries to HubDB allows you to quickly and easily incorporate HubDB data into your own JRuby applications. Download a free trial today!
Download a free trial of the HubDB Driver to get started:
Download NowLearn more:
👁 HubDB IconRapidly create and deploy powerful Java applications that integrate with HubDB.