Jersey JAX-RS использование @PathParam

Используя @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;
}
Jersey JAX-RS использование @PathParam
Jersey JAX-RS использование @PathParam

Получаем несколько параметров

Чтобы получить сразу несколько параметров их нужно объявить в @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;
}
Jersey JAX-RS использование @PathParam
Jersey JAX-RS использование @PathParam