Annotation Interface QueryParam
Binds the value of an HTTP query parameter to a Web route method parameter whose name indicates the name of the parameter.
The annotated parameter can be of any type as long as it can be decoded by a parameter converter.
When specifying a Web server route, a query parameter can be defined as optional when the method parameter is an Optional
, it is otherwise considered as required and a
MissingRequiredParameterException
will be thrown if the route is invoked with the parameter missing.
If a request is received containing multiple query parameters with the same name, the first one is bound unless the method parameter is an array, a Collection
, a
List
or a Set
in which case all values are bound. A parameter converter may also split raw values around a value separator (eg. value 1,2,3,4
can be
bound to a list of integers).
@WebRoute( ... )
void handler(@QueryParam int requiredParameter)
@WebRoute( ... )
void handler(@QueryParam Optional<Integer> optionalParameter)
@WebRoute( ... )
void handler(@QueryParam List<Integer> multiValueParameter)
- Since:
- 1.0
- Author:
- Jeremy Kuhn
- See Also:
-
Optional Element Summary
-
Element Details
-
name
String nameThe query parameter name.
This allows to override the name which is otherwise the Web route method parameter name, typically when the actual parameter name is not a valid Java identifier.
- Returns:
- a parameter name
- Default:
""
-