52.2.3. URI テンプレート変数の値の取得
概要 リンクのコピーリンクがクリップボードにコピーされました!
「パスの設定」 で説明されているように、リソースパスには、値に動的にバインドされた変数セグメントを含めることができます。多くの場合、これらの変数パスセグメントは、「URI のパスからのデータ取得」 で説明されているリソースメソッドへのパラメーターとして使用されます。ただし、URI コンテキストを使用してそれらにアクセスすることもできます。
パスパラメーターを取得する方法 リンクのコピーリンクがクリップボードにコピーされました!
UriInfo インターフェイスは、(例52.1「URI コンテキストからパスパラメーターを返すメソッド」 のように) パスパラメーターの一覧を返す 2 つのメソッドを提供します。
例52.1 URI コンテキストからパスパラメーターを返すメソッド
MultivaluedMap<java.lang.String, java.lang.String>
getPathParameters
MultivaluedMap<java.lang.String, java.lang.String>
getPathParameters
boolean
decode
パラメーターを取らない getPathParameters()
メソッドは、パスパラメーターを自動的にデコードします。URI のデコードを無効にする場合は、getPathParameters(false)
を使用します。
値は、テンプレート識別子をキーとして使用してマップに保存されます。たとえば、リソースの URI テンプレートが /{color}/box/{note} の場合、返されるマップには color
キーと note
キーを持つ 2 つのエントリーがあります。
例 リンクのコピーリンクがクリップボードにコピーされました!
例52.2「URI コンテキストからのパスパラメーターの抽出」 は、URI コンテキストを使用してパスパラメーターを取得するためのコードを示しています。
例52.2 URI コンテキストからのパスパラメーターの抽出