JRuby からShopify にデータ連携

加藤龍彦
加藤龍彦
デジタルマーケティング
リアルタイムShopify に連携するシンプルなJRuby アプリケーションを作成します。

JRuby はRuby プログラミング言語の高性能で安定した、完全にスレッド化されたJava 実装です。CData JDBC Driver for Shopify を使用すると、JRuby からリアルタイムShopify へのデータ連携を簡単に実装できます。ここでは、Shopify に接続し、クエリを実行して結果を表示する簡単なJRuby アプリを作成する方法を説明します。

Shopify のデータにJDBC で接続

アプリを作成する前に、JDBC Driver のJAR ファイルのインストール場所をメモします。 (通常はC:\Program Files\CDatat\CData JDBC Driver for Shopify\libにあります。)

JRuby は、JDBC をネイティブにサポートしているため、簡単にShopify に接続してSQL クエリを実行できます。java.sql.DriverManager クラスのgetConnection 関数を使用してJDBC 接続を初期化します。

それでは、Shopify への接続・認証について説明していきましょう。Shopify では、アクセストークンとOAuth の2つの接続方法をサポートしています。

アクセストークンによる接続

アクセストークン経由の接続には、以下の2つのステップが必要です。

  1. Shopify の管理画面でアクセストークンを作成
  2. アクセストークンを使用して認証

アクセストークンの作成

まず、アプリを登録してアクセストークンを取得してみましょう。手順は以下のとおりです。

  1. 管理画面からShopify にログインし、AppsApps and sales channels に進みます
  2. Develop apps をクリックしてCreate an app を選択します
  3. Overview タブのConfiguration で、Admin API integration をクリックし、アプリに許可するストアのアクセス権を選択してください。CData製品が必要とするAdmin API 権限については、 href="/kb/help/" target="_blank">ヘルプドキュメントの「はじめに」セクションをご確認ください
  4. Save をクリックします
  5. Overview タブのConfiguration で、Storefront API integration をクリックし、アプリに許可するストアのアクセス権を選択します。CData製品が必要とするStorefront API 権限は以下のとおりです:
    • unauthenticated_read_content
  6. Save をクリックします
  7. API Credentials を選択します
  8. "Access tokens" の下でInstall app をクリックします。これでアクセストークンが作成されます
  9. Admin API Access token のアクセストークンをコピーします。注意:トークンの公開およびコピーは1回のみ可能ですので、必ず保存してください

アクセストークンによる認証

続いて、アクセストークンで認証するには、以下のプロパティを設定してください。

  • AuthSchemeAccessToken に設定
  • AccessToken:カスタムアプリからコピーしたアクセストークンの値に設定

OAuth 認証を介した接続については、ヘルプドキュメントの「OAuth 認証の使用」をご確認ください。

ビルトイン接続文字列デザイナー

JDBC URL の構成については、Shopify JDBC Driver に組み込まれている接続文字列デザイナーを使用してください。JAR ファイルのダブルクリック、またはコマンドラインからJAR ファイルを実行します。

java -jar cdata.jdbc.shopify.jar

接続プロパティを入力し、接続文字列をクリップボードにコピーします。

Using the built-in connection string designer to generate a JDBC URL (Salesforce is shown.)

以下はShopify の一般的なJDBC 接続文字列です。

jdbc:shopify:AppId=MyAppId;Password=MyPassword;ShopUrl=https://yourshopname.myshopify.com;

Shopify のデータへの接続性を持つJRuby アプリを作成

新しいRuby ファイル(例: ShopifySelect.rb) を作成してテキストエディタで開き、次のコードをファイルにコピーします。

require 'java'
require 'rubygems'
require 'C:/Program Files/CData/CData JDBC Driver for Shopify 2018/lib/cdata.jdbc.shopify.jar'

url = "jdbc:shopify:AppId=MyAppId;Password=MyPassword;ShopUrl=https://yourshopname.myshopify.com;"
conn = java.sql.DriverManager.getConnection(url)
stmt = conn.createStatement
rs = stmt.executeQuery("SELECT FirstName, Id FROM Customers")
while (rs.next) do
  puts rs.getString(1) + ' ' + rs.getString(2)
end

ファイルが完成したら、コマンドラインからファイルを実行するだけでJRuby でShopify を表示できるようになります。

jruby -S ShopifySelect.rb

SQL-92 クエリをShopify に書き込むと、Shopify を独自のJRuby アプリケーションに素早く簡単に組み込むことができます。今すぐ無料トライアルをダウンロードしましょう。

はじめる準備はできましたか?

Shopify Driver の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

Shopify Icon Shopify JDBC Driver お問い合わせ

Shopify EC データに連携するJava アプリケーションを素早く、簡単に開発できる便利なドライバー。