Cómo acceder a una variable de la URL en Spring Boot

Cuando programamos en Java usando el framework Spring Boot es muy común definir rutas en donde se define un parámetro pasado a través de la URL.

Por ejemplo, podemos tener la siguiente ruta:

http://localhost:8080/productos/editar/16

En este caso el último número es un parámetro de la ruta. Ahora bien, ¿cómo acceder a la variable de la ruta en el controlador de Spring Boot?

Acceder a PathVariable

Esto es muy fácil. En nuestro controlador definimos nuestra ruta, ya sea POST, PUT, GET, DELETE. A la variable de ruta hay que encerrarla entre llaves. Por ejemplo:

@GetMapping(value = "/editar/{id}")
public String mostrarFormularioEditar(@PathVariable int id, Model model) {
    model.addAttribute("producto", productosRepository.findById(id));
    return "productos/editar_producto";
}

En la línea 1 definimos la ruta en donde vamos a acceder a la variable a través de {id}.

Para recuperar la variable de la ruta con Spring Boot inyectamos @PathVariable (línea 2) en nuestro método, indicando su tipo y el nombre de la variable.

Después, con ese valor, ya podemos trabajar.

Si el post ha sido de tu agrado te invito a que me sigas para saber cuando haya escrito un nuevo post, haya actualizado algún sistema o publicado un nuevo software. Facebook | X | Instagram | Telegram | También estoy a tus órdenes para cualquier contratación en mi página de contacto