Pouvez-vous avoir une option de QueryParam en jersey?
À l'aide de java jersey, j'ai le texte suivant @QueryParam dans mon gestionnaire de méthode:
@Path("/hello")
handleTestRequest(@QueryParam String name, @QueryParam Integer age)
Je sais que si je fais:
http://myaddress/hello?name=something
Il va aller dans cette méthode....
Je veux faire en sorte que je peux appeler:
Et elle va aussi aller dans la même méthode. Est il possible que je peux drapeau à une "option" PathParam? Est-ce de travailler avec @FormParam trop? Ou suis-je obligé de créer une méthode avec une méthode différente de la signature?
OriginalL'auteur Rolando | 2015-09-02
Vous devez vous connecter pour publier un commentaire.
De JAX-RS paramètres ne sont pas obligatoires, si vous ne fournissez pas une valeur d'âge, il sera
NULL
, et votre méthode sera toujours appelé.Vous pouvez également utiliser
@DefaultValue
pour fournir une valeur par défaut valeur d'âge quand il n'est pas présent.La
@PathParam
paramètre et l'autre paramètre à base d'annotations,@MatrixParam
,@HeaderParam
,@CookieParam
, et@FormParam
obéir aux mêmes règles que@QueryParam
.Référence
OriginalL'auteur rafikn
Vous devriez être en mesure d'ajouter de la
@DefaultValue
annotation de laage
paramètre, de sorte que siage
n'est pas fourni, la valeur par défaut sera utilisée.Selon la Javadoc
@DefaultValue
, il devrait fonctionner sur tous les *Param annotations.OriginalL'auteur rgettman
Vous pouvez toujours enrouler le type de retour, en option, par exemple:
@QueryParam("from") Optional<String> from
OriginalL'auteur charlie_pl