@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.
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
).
ID
proporcionado y devuelve un mensaje confirmando la operación.
Para obtener más información sobre @PutMapping
, visita la documentación oficial de Spring.
Jorge García
Fullstack developer