Skip to content

AeonBerserker/literalura

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LiterAlura - Challenge Alura Latam Aplicación de catálogo de libros desarrollada con Java, Spring Boot y PostgreSQL. Consume la API Gutendex para buscar y almacenar información de libros del dominio público. Tecnologías • Java 17 • Spring Boot 3.2.3 • Spring Data JPA • PostgreSQL 16 • Maven • Gutendex API Funcionalidades • Búsqueda de libros por título • Registro de libros en base de datos • Consulta de autores • Filtrado por idioma • Top 10 libros más descargados Instalación 1. Clonar repositorio 2. Crear base de datos PostgreSQL literalura 3. Configurar credenciales en application.properties 4. Ejecutar: mvn spring-boot:run Autor [Tu nombre] - Challenge Alura Latam ONE Haz commit y push del README: git add README.md git commit -m "docs: agregar README" git push Paso 13: Mejoras Opcionales Manejo de Excepciones Crea clases de excepción personalizadas en exception/: package com.tuusuario.literalura.exception; public class LibroNoEncontradoException extends RuntimeException { public LibroNoEncontradoException(String mensaje) { super(mensaje); } } Validaciones Agrega validaciones Bean Validation en las entidades: import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; @Entity public class Libro { @NotBlank(message = "El título no puede estar vacío") private String titulo;

@NotNull(message = "Las descargas no pueden ser nulas") private Long descargas;

// resto del código

} Estadísticas Adicionales Agrega queries personalizadas en los repositorios: @Query("SELECT l FROM Libro l WHERE l.descargas > :minDescargas") List findLibrosPopulares(@Param("minDescargas") Long minDescargas); Pruebas Unitarias Crea tests en src/test/java/: @SpringBootTest class LibroRepositoryTest { @Autowired private LibroRepository libroRepository;

@Test void testBuscarPorTitulo() { Optional libro = libroRepository.findByTituloIgnoreCase("Don Quijote"); assertTrue(libro.isPresent()); }

} Conclusión Has completado exitosamente el desarrollo del proyecto LiterAlura Challenge[3][4]. La aplicación ahora puede: • Consumir la API Gutendex para obtener información de libros • Persistir datos en PostgreSQL usando Spring Data JPA • Ofrecer un menú interactivo de consola para gestionar el catálogo • Realizar consultas complejas sobre libros y autores • Evitar duplicados mediante validación de títulos únicos Este proyecto demuestra conocimientos en arquitectura de aplicaciones Java, integración con bases de datos relacionales, consumo de APIs REST y desarrollo orientado a objetos[1][2][3]. Recursos Adicionales • API Gutendex: https://gutendex.com • Spring Initializr: https://start.spring.io • Documentación Spring Data JPA: https://spring.io/projects/spring-data-jpa • PostgreSQL Documentation: https://www.postgresql.org/docs/ Referencias [1] GitHub - NicoNZ12/LiterAlura. Repositorio del Challenge de Alura Latam "LiterAlura". https://github.com/NicoNZ12/LiterAlura [2] GitHub - nandojmj/Alura_Challenge_Literatura. Open Challenge Backend ONE. https://github.com/nandojmj/Alura_Challenge_Literatura/ [3] GitHub - darociion/literalura. This repository contains the Java Back-End solution to the challenge. https://github.com/darociion/literalura [4] GitHub - luiferDev/literalura-challenge. Java project using JPA for database operations. https://github.com/luiferDev/literalura-challenge [5] Tutorial-Java.com. (2025). How to Configure Spring Boot and PostgreSQL Using application.properties. https://www.tutorial-java.com/2025/05/how-to-configure-spring-boot-and-postgresql-using-application-properties.html [6] CertiDevs. (2025). Configuración base de base de datos PostgreSQL en Spring Boot. https://certidevs.com/tutorial-spring-boot-jpa-postgresql [7] Gutendex API. Web API for Project Gutenberg. https://gutendex.com [8] PublicAPI. (2026). Gutendex API. https://publicapi.dev/gutendex-api

About

Book catalog app consuming Gutendex API. Oracle ONE Challenge - Java Back End.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages