JDBI からSurveyMonkey データ のデータアクセスオブジェクトを作成

JDBI でSurveyMonkey のデータ 用のSQL オブジェクトAPIを作成する方法を概説します。

加藤龍彦
デジタルマーケティング

最終更新日:2022-05-25

この記事で実現できるSurveyMonkey 連携のシナリオ

こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。

JDBI は、Fluent スタイルとSQL オブジェクトスタイルという2つの異なるスタイルAPI を公開する、Java 用のSQL コンビニエンスライブラリです。CData JDBC Driver for SurveyMonkey は、Java アプリケーションとリアルタイムSurveyMonkey のデータ のデータ連携を実現します。これらの技術を組み合わせることによって、SurveyMonkey のデータ へのシンプルなコードアクセスが可能になります。ここでは、基本的なDAO(Data Access Object )とそれに付随するSurveyMonkey のデータ の読み書きのためのコードの作成について説明します。

SurveyMonkey MySurvey_Responses Entity のDAO を作成

以下のインターフェースは、実装されるSQL ステートメントごとに単一のメソッドを作成するためのSQL オブジェクトの正しい動作を宣言します。

public interface MyMySurvey_ResponsesDAO { //request specific data from SurveyMonkey (String type is used for simplicity) @SqlQuery("SELECT ChoiceId FROM MySurvey_Responses WHERE ChoiceText = :choiceText") String findChoiceIdByChoiceText(@Bind("choiceText") String choiceText); /* * close with no args is used to close the connection */ void close(); }

SurveyMonkey への接続を開く

必要な接続プロパティを収集し、SurveyMonkey に接続するための適切なJDBC URL を作成します。

SurveyMonkey はOAuth 2 認証標準を利用しています。SurveyMonkey がアンケートの回答を読むためにこれを必要とすることを考えると、アンケートを読むアカウントには有料プランのサブスクリプションが必要です。

SurveyMonkey への接続に使用できる認証方法は2つあります。

  • プライベートoauth アプリケーションを登録するときに、パーソナルアクセストークンを使用します。
  • パブリックoauth アプリケーションを登録するときに、OAuth を使用します。

パーソナルアクセストークンの使用

個人用トークンを使用して、自分のデータをテストし、アクセスします。個人用トークンを取得するには、ヘルプの「Creating a Custom OAuth App」の手順に従って、次の接続プロパティを設定します。

  • OAuthAccessToken:アプリケーション設定で生成されたAccessToken に設定。
  • InitiateOAuth:OFF に設定。

OAuth の使用

CData 製品はすでにSurveyMonkey にOAuth アプリケーションとして登録されています。そのため、デフォルトでは、自動的に埋め込みクレデンシャルを使用して接続します。

独自のカスタムOAuth アプリを使用したい場合は、ヘルプのCustom Credentials を参照してください。

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

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

java -jar cdata.jdbc.surveymonkey.jar

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

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

SurveyMonkey の接続文字列は、通常次のようになります。

jdbc:surveymonkey:OAuthClientId=MyOAuthClientId;OAuthClientSecret=MyOAuthClientSecret;CallbackURL=http://localhost:portNumber;InitiateOAuth=GETANDREFRESH

構成済みのJDBC URL を使用して、DAO インターフェースのインスタンスを取得します。以下に示す特定のメソッドはインスタンスにバインドされたハンドルを開くため、ハンドルとバインドされたJDBC 接続を開放するには、インスタンスを明示的に閉じる必要があります。

DBI dbi = new DBI("jdbc:surveymonkey:OAuthClientId=MyOAuthClientId;OAuthClientSecret=MyOAuthClientSecret;CallbackURL=http://localhost:portNumber;InitiateOAuth=GETANDREFRESH"); MyMySurvey_ResponsesDAO dao = dbi.open(MyMySurvey_ResponsesDAO.class); //do stuff with the DAO dao.close();

SurveyMonkey データ について

SurveyMonkey への接続を開いた状態で以前定義したメソッドを呼び出すだけで、SurveyMonkey のMySurvey_Responses エンティティからデータを取得できます。

//disply the result of our 'find' method String choiceId = dao.findChoiceIdByChoiceText("blue"); System.out.println(choiceId);

JDBI ライブラリはJDBC 接続を処理できるため、CData JDBC Driver for SurveyMonkey と統合することで、SQL Object API for SurveyMonkey を簡単に作成できます。今すぐ無料トライアルをダウンロードし、Java アプリケーションでリアルタイムSurveyMonkey を操作しましょう。

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。