はじめに
kintone Java Client は、 kintone REST API を Java プログラムから使う際に必要な処理をまとめたライブラリです。
kintone で利用可能な REST API のほとんどを網羅しています。
kintone Java Client を使うと、用意されたメソッドを呼び出すだけで kintone REST API を実行できるので、コードの記述量を減らすことができます。
また、IntelliJ などの IDE を利用すると、コードの補完ができます。
この記事では、kintone Java Client の導入方法や基本的な使い方について説明します。kintone Java Client が提供するメソッドの使い方の例は、サンプル集をご参照ください。
GitHub
https://github.com/kintone/kintone-java-client
ライセンス
MIT ライセンス
ドキュメント
https://kintone.github.io/kintone-java-client/javadoc/
この記事では、kintone Java Client(以下、本 Client)の導入方法と使い方を説明します。
導入方法
Gradle プロジェクトの場合
build.gradle に下記の内容を追記します。
※ 2行目の : 以降で指定するバージョンは、利用する kintone Java Client のバージョンを指定してください。
Maven プロジェクトの場合
pom.xml に下記の内容を追記します。
※ 4行目の version は、利用する kintone Java Client のバージョンを指定してください。
使い方
本 Client の使い方について説明します。また、あわせて Javadoc もご参照ください。
以下は、kintone のレコードを取得し、レコード ID をコンソールに出力する例です。
※ 実際のプログラムでは、ドメイン名や認証情報などはハードコーディングを避け、Java プロパティファイルなどに定義して読み込むようにしてください。
※ サンプルのため、例外処理を省略しています。実際のプログラムでは、適切にエラーハンドリングしてください。
本 Client による kintone の操作は、次の手順で行います。
手順1. kintone クライアントを生成する
KintoneClientBuilder を利用して、KintoneClient を生成します。
認証情報の設定
本 Client では、パスワード認証と API トークン認証に対応しています。
パスワード認証で kintone クライアントを作成する
API トークン認証で kintone クライアントを作成する
クライアント証明書や Basic 認証情報も設定できます。
クライアント証明書を設定する
Basic 認証を設定する
kintone の URL と認証情報以外の設定する項目がない場合、defaultClient メソッドを使うと簡略的にKintoneClient を生成できます。
クローズ処理
KintoneClient は内部で HTTP コネクションを保有しています。
処理が終わりKintoneClient が役目を終えたら、 close()メソッド を呼び出し、クローズ処理を行ってください。
その他
- KintoneClientBuilder では、コネクションタイムアウトやプロキシ設定など、さまざまな項目を設定できます。
- setAppendixUserAgent メソッドによって User-Agent に追記する文字列を入れることもできます。
プログラム名や、処理内容を識別できる値を設定しておくと、今後、性能問題などが発生した場合にサイボウズ側でも調査しやすくなり、よりスピーディに問題解決できる場合があります。
ぜひご活用ください。
手順2. 操作対象のクライアントを取得する
KintoneClient を生成したら、操作したい対象のクライアントを取得します。
操作対象には、「アプリ」「レコード」「スペース」「ファイル」「スキーマ(API スキーマ)」があります。
上記コードでは、処理が終わったときに自動で KintoneClient#close() メソッドが呼び出されるよう try-with-resources を用いています。
特別な事情が無い限り、処理が終わった際に close() が正しく呼び出されるよう try-with-resources を利用することを推奨します。
※ この例ではgetKintoneClient() というKintoneClient を取得するメソッドがあるものとします。
手順3. メソッドを呼び出し、kintone を操作する
操作対象のクライアントを生成したら、操作メソッドを呼び出します。
kintone の操作を行うには、kintone REST API の各 API に対応するメソッドにリクエストクラスを渡します。一部のメソッドでは、それらをラップしたより簡便に利用できるメソッドも利用できます。
方法1: 各 API に対応するメソッドにリクエストクラスを渡して、kintone を操作する
「API 名 + Request」というリクエストクラスを操作対象のクライアントに渡すと、「API 名 + ResponseBody」というレスポンスクラスのインスタンスを取得できます。
下記は、レコード取得 API(get record)の例です。
リクエストクラス:GetRecordRequest
レスポンスクラス:GetRecordResponseBody
方法2: より簡便に利用できるメソッドを利用して、kintone を操作する
getRecord メソッドには、より簡便に利用できるメソッドがあります。これを利用すると、前述の処理を以下のように書くことができます。
おわりに
kintone Java Client を利用すると、Java によるバッチプログラムやモバイルアプリの開発において、kintone REST API の実行を楽に実現できます。
kintone Java Client の利用方法は、サンプル集もご参照ください。
更新情報
ライブラリのアップデート情報は、こちらのページをご参照ください。
- 2020年6月1日 「導入方法」で、ローカル の jar ファイルを利用する方法からセントラルリポジトリを利用する方法に修正
このTipsは、2020年2月版 kintone および kintone Java Client v0.9 で確認したものになります。
記事に関するフィードバック
記事のコメント欄は記事に対するフィードバックをする場となっております。
右の記事フィードバックのためのガイドを参照してコメントしてください。
記事のリンク切れなど、気になる点がある場合も、こちらのフォームからフィードバックいただけますと幸いです。