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

Cómo manejar solicitudes POST con @PostMapping en Spring Boot

¿Qué es @PostMapping en Spring Boot?

@PostMapping es una anotación específica de Spring utilizada para mapear solicitudes HTTP POST en métodos de un controlador. Esta anotación simplifica la configuración de rutas y es útil para operaciones que implican la creación o el envío de datos desde el cliente al servidor. A diferencia de @GetMapping, que se usa para recuperar información, @PostMapping suele utilizarse cuando se envían datos para ser procesados, como por ejemplo el envío de formularios, la creación de registros en bases de datos, o para recibir datos en formato JSON.

Ejemplos de uso de @PostMapping en Spring Boot

import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class MiControlador {

    // Endpoint para procesar un formulario simple
    @PostMapping("/enviarMensaje")
    public String enviarMensaje(@RequestParam("mensaje") String mensaje) {
        return "Mensaje recibido: " + mensaje;
    }

    // Endpoint para recibir un objeto JSON y procesarlo
    @PostMapping("/crearUsuario")
    public String crearUsuario(@RequestBody Usuario nuevoUsuario) {
        return "Usuario creado: " + nuevoUsuario.getNombre();
    }
}

// Clase Usuario para el ejemplo de recepción de 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:

  • @PostMapping("/enviarMensaje") define un endpoint que recibe un parámetro de consulta mensaje y lo devuelve en la respuesta.
  • @PostMapping("/crearUsuario") maneja una solicitud POST que acepta un objeto JSON (Usuario) en el cuerpo de la solicitud, lo convierte en un objeto Java con la anotación @RequestBody y devuelve un mensaje confirmando la creación del usuario.

Referencia oficial

Puedes consultar más detalles sobre el uso de @PostMapping en la documentación oficial de Spring.

Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer