Cómo escribir una API REST en Java en 30 minutos: guía práctica

Entrenador de Python en Línea para Principiantes

Aprende Python fácilmente sin sobrecargarte de teoría. Resuelve tareas prácticas con verificación automática, recibe pistas y escribe código directamente en el navegador, sin instalar nada.

Start Course

Introducción: REST API en Java es más fácil de lo que parece



El desarrollo de REST API es una de las habilidades más demandadas en el desarrollo backend moderno. Java, gracias a su fiabilidad y enorme ecosistema, sigue siendo líder para la creación de API industriales. Muchos principiantes piensan que escribir una REST API en Java es difícil y lleva mucho tiempo. En realidad, con la herramienta adecuada (Spring Boot) puedes crear un servicio funcional en 30 minutos.



En este artículo, analizaremos en la práctica cómo crear rápidamente una REST API completa en Java. Escribiremos una pequeña aplicación para gestionar una lista de libros, que soporte las operaciones CRUD estándar: creación, lectura, actualización y eliminación de registros. Todo el código estará listo para ejecutarse, y podrás probarlo a través de Postman o el navegador.



1. Preparación del proyecto y configuración de Spring Boot



La forma más rápida de crear un proyecto es usar Spring Initializr. Es el generador oficial que crea un esqueleto de proyecto con las dependencias necesarias.



1.1. Generación del proyecto

Ve a start.spring.io y selecciona:

  • Project: Maven (o Gradle)
  • Language: Java
  • Spring Boot: última versión estable (por ejemplo, 3.2.x)
  • Group: com.example
  • Artifact: bookapi

Añade las dependencias:

  • Spring Web — para crear controladores REST
  • Spring Data JPA — para trabajar con la base de datos
  • H2 Database — base de datos embebida para pruebas

Haz clic en "Generate", descarga el archivo y descomprímelo. Abre el proyecto en IntelliJ IDEA o cualquier otro IDE.



1.2. Estructura del proyecto

Después de abrir el proyecto, verás la siguiente estructura:

bookapi/├── src/│   ├── main/│   │   ├── java/com/example/bookapi/│   │   │   ├── BookapiApplication.java│   │   │   ├── controller/│   │   │   ├── model/│   │   │   └── repository/│   │   └── resources/│   │       └── application.properties│   └── test/└── pom.xml

Crea los paquetes controller, model y repository manualmente; esto facilitará la navegación.



2. Creación del modelo de datos y del repositorio



Empecemos con el modelo: la clase que describe la entidad "Libro".



2.1. Clase Book (Model)

Crea el archivo Book.java en el paquete model:

package com.example.bookapi.model;

import jakarta.persistence.*;

@Entity@Table(name = "books")public class Book {

@Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id;

@Column(nullable = false) private String title;

@Column(nullable = false) private String author;

private int year;

public Book() {}

public Book(String title, String author, int year) { this.title = title; this.author = author; this.year = year; }

// Getters y Setters public Long getId() { return id; } public void setId(Long id) { this.id = id; }

public String getTitle() { return title; } public void setTitle(String title) { this.title = title; }

public String getAuthor() { return author; } public void setAuthor(String author) { this.author = author; }

public int getYear() { return year; } public void setYear(int year) { this.year = year; }}


2.2. Repositorio (Repository)

Crea la interfaz BookRepository.java en el paquete repository:

package com.example.bookapi.repository;

import com.example.bookapi.model.Book;import org.springframework.data.jpa.repository.JpaRepository;import org.springframework.stereotype.Repository;

import java.util.L

Blogs

Book Recommendations