Volver a la página principal
martes 1 octubre 2024
85

Cómo manejar solicitudes PUT con @PutMapping en Spring Boot

¿Qué es @PutMapping en Spring Boot?

@PutMapping es una anotación específica de Spring que se usa para mapear las solicitudes HTTP PUT a métodos de un controlador. Generalmente, se emplea para operaciones de actualización de recursos, ya sea para cambiar datos completos o parciales de un recurso identificado por un parámetro, como el ID. Esta anotación es útil cuando se desea sobrescribir o modificar la información existente en el servidor con datos proporcionados por el cliente.

La diferencia principal entre @PostMapping y @PutMapping radica en que PUT se utiliza para actualizar recursos existentes, mientras que POST se usa principalmente para crear nuevos recursos.

Ejemplos de uso de @PutMapping en Spring Boot

import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class MiControlador {

    // Endpoint para actualizar un recurso con un ID específico
    @PutMapping("/actualizarUsuario/{id}")
    public String actualizarUsuario(@PathVariable("id") int id, @RequestBody Usuario usuarioActualizado) {
        // Lógica de actualización del usuario (solo para ejemplo)
        return "Usuario con ID " + id + " actualizado a: " + usuarioActualizado.getNombre();
    }
}

// Clase Usuario para el ejemplo de recepción de datos JSON
class Usuario {
    private String nombre;
    private int edad;

    // Getters y setters
    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    public int getEdad() {
        return edad;
    }

    public void setEdad(int edad) {
        this.edad = edad;
    }
}

En este ejemplo:

  • @PutMapping("/actualizarUsuario/{id}") define un endpoint que recibe un ID como parámetro de ruta (@PathVariable) y un objeto Usuario con los nuevos datos (@RequestBody).
  • El método procesa la actualización del recurso identificado por el ID proporcionado y devuelve un mensaje confirmando la operación.

Referencia oficial

Para obtener más información sobre @PutMapping, visita la documentación oficial de Spring.

Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer