JDBI からLinear データのデータアクセスオブジェクトを作成
JDBI は、Fluent スタイルとSQL オブジェクトスタイルという2つの異なるスタイルAPI を公開する、Java 用のSQL コンビニエンスライブラリです。CData JDBC Driver for Linear は、Java アプリケーションとリアルタイムLinear のデータ のデータ連携を実現します。これらの技術を組み合わせることによって、Linear のデータ へのシンプルなコードアクセスが可能になります。ここでは、基本的なDAO(Data Access Object )とそれに付随するLinear のデータ の読み書きのためのコードの作成について説明します。
Linear Team Entity のDAO を作成
以下のインターフェースは、実装されるSQL ステートメントごとに単一のメソッドを作成するためのSQL オブジェクトの正しい動作を宣言します。
public interface MyTeamDAO {
//request specific data from Linear (String type is used for simplicity)
@SqlQuery("SELECT name FROM Team WHERE key = :key")
String findnameBykey(@Bind("key") String key);
/*
* close with no args is used to close the connection
*/
void close();
}
Linear への接続を開く
必要な接続プロパティを収集し、Linear に接続するための適切なJDBC URL を作成します。
Linear への認証には、個人用 API キーまたは OAuth 2.0 を使用できます。ご自身の Linear アカウントで接続する場合は、API キーを使うのが最も手軽です。
API キーによる認証
以下の接続プロパティを設定します。
- AuthScheme:APIKey に設定します。
- APIKey:Linear の個人用 API キー。
個人用 API キーを作成するには、Linear にログインして Settings > Security & access > Personal API keys を開き、New API key を選択して作成します。キーは一度しか表示されないため、すぐにコピーしておきましょう。
OAuth による認証
OAuth を使用するには、Linear にカスタム OAuth アプリケーションを登録する必要があります(Settings > API > OAuth applications)。登録すると OAuthClientId と OAuthClientSecret が発行されます。対応しているフローは以下の 2 つです。
- Authorization code:AuthScheme を OAuth、InitiateOAuth を GETANDREFRESH に設定し、OAuthClientId、OAuthClientSecret、およびアプリケーションで定義した CallbackURL(例:http://localhost:33333)を指定します。ドライバーがブラウザで Linear を開くので、アクセスを許可してください。
- Client credentials:AuthScheme を OAuthClient に設定し、OAuthClientId と OAuthClientSecret を指定します。アプリケーション自体を認証するためブラウザ操作は不要で、マシン間(M2M)連携に適しています。
デフォルトでは、ドライバーは read,write スコープをリクエストします。アクセストークンは有効期限が切れると自動で更新されます。
ビルトイン接続文字列デザイナー
JDBC URL の構成については、Linear JDBC Driver に組み込まれている接続文字列デザイナーを使用してください。JAR ファイルのダブルクリック、またはコマンドラインからJAR ファイルを実行します。
java -jar cdata.jdbc.linear.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
Linear の接続文字列は、通常次のようになります。
jdbc:linear:AuthScheme=APIKey;APIKey=myAPIKey;
構成済みのJDBC URL を使用して、DAO インターフェースのインスタンスを取得します。以下に示す特定のメソッドはインスタンスにバインドされたハンドルを開くため、ハンドルとバインドされたJDBC 接続を開放するには、インスタンスを明示的に閉じる必要があります。
DBI dbi = new DBI("jdbc:linear:AuthScheme=APIKey;APIKey=myAPIKey;");
MyTeamDAO dao = dbi.open(MyTeamDAO.class);
//do stuff with the DAO
dao.close();
Linear データについて
Linear への接続を開いた状態で以前定義したメソッドを呼び出すだけで、Linear のTeam エンティティからデータを取得できます。
//disply the result of our 'find' method
String name = dao.findnameBykey("ENG");
System.out.println(name);
JDBI ライブラリはJDBC 接続を処理できるため、CData JDBC Driver for Linear と統合することで、SQL Object API for Linear を簡単に作成できます。今すぐ無料トライアルをダウンロードし、Java アプリケーションでリアルタイムLinear を操作しましょう。