パッケージ jakarta.ws.rs
アノテーション型 QueryParam
@TargetSE({PARAMETERSE,METHODSE,FIELDSE}) @RetentionSE(RUNTIMESE) @DocumentedSE public @interface QueryParam
HTTP クエリパラメーターの値をリソースメソッドパラメーター、リソースクラスフィールド、リソースクラス Bean プロパティにバインドします。Encoded
アノテーションを使用してこれを無効にしない限り、値は URL デコードされます。デフォルト値は、DefaultValue
アノテーションを使用して指定できます。アノテーション付きパラメーター、フィールド、プロパティの型T
は、次のいずれかでなければなりません。- プリミティブ型になる
- 単一の
String
引数を受け入れるコンストラクターがある - 単一の
String
引数を受け入れるvalueOf
またはfromString
という名前の静的メソッドがある (たとえば、Integer.valueOf(String)
SE を参照してください) - 型の「文字列から」変換が可能な
ParamConverter
インスタンスを返すParamConverterProvider
JAX-RS 拡張 SPI の登録済み実装があります。 List<T>
、Set<T>
、SortedSet<T>
またはT[]
配列であり、T
は 2, 3 または上記 4 を満たします。結果のコレクションは読み取り専用です。
型が上記の 5 にリストされているコレクション型のいずれでもなく、クエリパラメーターが複数の値で表されている場合、パラメーターの最初の値(字句)が使用されます。
インジェクションはオブジェクトの作成時に発生するため、リソースクラスフィールドおよび Bean プロパティでのこのアノテーションの使用は、デフォルトのリクエストごとのリソースクラスライフサイクルでのみサポートされます。他のライフサイクルを使用するリソースクラスは、リソースメソッドパラメーターでのみこのアノテーションを使用する必要があります。
- 導入:
- 1.0
- 作成者:
- Paul Sandoz, Marc Hadley
- 関連事項:
DefaultValue
,Encoded
,UriInfo.getQueryParameters()
要素の詳細
value
StringSE value
アノテーション付きメソッド引数、クラスフィールド、Bean プロパティの値を初期化するためにその値が使用される HTTP クエリパラメーターの名前を定義します。名前はデコードされた形式で指定されます。値内のパーセントエンコードされたリテラルはデコードされず、代わりにリテラルテキストとして扱われます。たとえば、パラメーター名が "ab" の場合、アノテーションの値は "a + b" や "a%20b" ではなく "ab" です。- 戻り値:
- HTTP クエリパラメーター名。