Используя @PathParam
можно извлекать значения из переменных, заданных в @Path
и передавать их в методы сервиса.
Код сервиса:
package ru.mydesignstudio.rest; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.PathParam; @Path("/hello") public class HelloService { @GET @Path("/param/{name}") public String withParameter( @PathParam("name") String name) { return "With name parameter " + name; } @GET @Path("/param/{first}/{second}") public String multipleParameters( @PathParam("first") String first, @PathParam("second") String second) { return "With two parameters: " + first + " and " + second; } }
Получаем один параметр
В первом методе задан только один параметр – name @Path("/param/{name}")
, передать значение параметра в метод можно с помощью @PathParam("name")
:
@GET @Path("/param/{name}") public String withParameter( @PathParam("name") String name) { return "With name parameter " + name; }
Получаем несколько параметров
Чтобы получить сразу несколько параметров их нужно объявить в @Path("/param/{first}/{second}")
, а затем аналогично получить через @PathParam
:
@GET @Path("/param/{first}/{second}") public String multipleParameters( @PathParam("first") String first, @PathParam("second") String second) { return "With two parameters: " + first + " and " + second; }