JDBI からCvent データのデータアクセスオブジェクトを作成
JDBI は、Fluent スタイルとSQL オブジェクトスタイルという2つの異なるスタイルAPI を公開する、Java 用のSQL コンビニエンスライブラリです。CData JDBC Driver for Cvent は、Java アプリケーションとリアルタイムCvent のデータ のデータ連携を実現します。これらの技術を組み合わせることによって、Cvent のデータ へのシンプルなコードアクセスが可能になります。ここでは、基本的なDAO(Data Access Object )とそれに付随するCvent のデータ の読み書きのためのコードの作成について説明します。
Cvent Events Entity のDAO を作成
以下のインターフェースは、実装されるSQL ステートメントごとに単一のメソッドを作成するためのSQL オブジェクトの正しい動作を宣言します。
public interface MyEventsDAO {
//insert new data into Cvent
@SqlUpdate("INSERT INTO Events (Virtual, Title) values (:virtual, :title)")
void insert(@Bind("virtual") String virtual, @Bind("title") String title);
//request specific data from Cvent (String type is used for simplicity)
@SqlQuery("SELECT Title FROM Events WHERE Virtual = :virtual")
String findTitleByVirtual(@Bind("virtual") String virtual);
/*
* close with no args is used to close the connection
*/
void close();
}
Cvent への接続を開く
必要な接続プロパティを収集し、Cvent に接続するための適切なJDBC URL を作成します。
Cvent への認証を行う前に、ワークスペースとOAuth アプリケーションを作成する必要があります。
ワークスペースの作成
ワークスペースを作成するには:
- Cvent にサインインし、App Switcher(ページ右上の青いボタン) -> Admin に移動します。
- Admin メニューから、Integrations -> REST API に移動します。
- Developer Management の新しいタブが立ち上がります。新しいタブでManage API Access をクリックします。
- Workspace を作成し、名前を付けます。開発者にアクセスさせたいスコープを選択します。スコープは、開発者がアクセスできるデータドメインを制御します。
- All を選択すると、開発者は任意のスコープ、およびREST API にこれから追加されるスコープを選択できます。
- Custom を選択すると、開発者がOAuth アプリで選択できるスコープを、選択したスコープに制限できます。CData 製品によって公開されるすべてのテーブルにアクセスするには、次のスコープを設定する必要があります。
event/attendees:read event/attendees:write event/contacts:read event/contacts:write event/custom-fields:read event/custom-fields:write event/events:read event/events:write event/sessions:delete event/sessions:read event/sessions:write event/speakers:delete event/speakers:read event/speakers:write budget/budget-items:read budget/budget-items:write exhibitor/exhibitors:read exhibitor/exhibitors:write survey/surveys:read survey/surveys:write
OAuth アプリケーションの作成
Workspace を設定して招待すると、開発者はサインアップしてカスタムOAuth アプリを作成できます。手順については、ヘルプドキュメントのカスタムOAuth アプリケーションの作成を参照してください。
Cvent への接続
OAuth アプリケーションを作成したら、次の接続プロパティを設定してCvent に接続します。
- InitiateOAuth:GETANDREFRESH。OAuthAccessToken を自動的に取得およびリフレッシュするために使用します。
- OAuthClientId:OAuth アプリケーションに関連付けられたClient ID。これは、Cvent Developer Portal のApplications page ページにあります。
- OAuthClientSecret:OAuth アプリケーションに関連付けられたClient secret。これは、Cvent Developer Portal のApplications page ページにあります。
ビルトイン接続文字列デザイナー
JDBC URL の構成については、Cvent JDBC Driver に組み込まれている接続文字列デザイナーを使用してください。JAR ファイルのダブルクリック、またはコマンドラインからJAR ファイルを実行します。
java -jar cdata.jdbc.cvent.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
Cvent の接続文字列は、通常次のようになります。
jdbc:cvent:OAuthClientId=MyOAuthClientId;OAuthClientSecret=MyOAuthClientSecret;
構成済みのJDBC URL を使用して、DAO インターフェースのインスタンスを取得します。以下に示す特定のメソッドはインスタンスにバインドされたハンドルを開くため、ハンドルとバインドされたJDBC 接続を開放するには、インスタンスを明示的に閉じる必要があります。
DBI dbi = new DBI("jdbc:cvent:OAuthClientId=MyOAuthClientId;OAuthClientSecret=MyOAuthClientSecret;");
MyEventsDAO dao = dbi.open(MyEventsDAO.class);
//do stuff with the DAO
dao.close();
Cvent データについて
Cvent への接続を開いた状態で以前定義したメソッドを呼び出すだけで、Cvent のEvents エンティティからデータを取得できます。
//disply the result of our 'find' method
String title = dao.findTitleByVirtual("true");
System.out.println(title);
Cvent データの書き方
以前定義した方法を使用すれば、Cvent にデータを書き込むことも簡単になります。
//add a new entry to the Events entity dao.insert(newVirtual, newTitle);
JDBI ライブラリはJDBC 接続を処理できるため、CData JDBC Driver for Cvent と統合することで、SQL Object API for Cvent を簡単に作成できます。今すぐ無料トライアルをダウンロードし、Java アプリケーションでリアルタイムCvent を操作しましょう。