LiterAlura es una aplicacion de consola interactiva en Java con Spring Boot que permite buscar y gestionar libros y autores. Consume la API Gutendex usando el cliente HTTP nativo de Java (HttpClient), persiste la informacion en PostgreSQL con Spring Data JPA y modela una relacion muchos a muchos entre Libro y Autor. El proyecto cumple los requisitos del desafio de Alura Latam.
- Java 17
- Spring Boot
- Spring Data JPA
- PostgreSQL
- HttpClient nativo de Java (java.net.http)
- Jackson
- Maven
- Nombre de la base de datos:
literalura - Usuario por defecto:
postgres - Contrasena por defecto:
postgres
Ejemplo de creacion en PostgreSQL:
CREATE DATABASE literalura;Si necesitas crear el usuario (opcional):
CREATE USER postgres WITH PASSWORD 'postgres';
GRANT ALL PRIVILEGES ON DATABASE literalura TO postgres;- Clona el repositorio.
- Configura
src/main/resources/application.propertiescon tus credenciales:spring.datasource.url=jdbc:postgresql://localhost:5432/literalura spring.datasource.username=postgres spring.datasource.password=postgres spring.jpa.hibernate.ddl-auto=update
- Ejecuta con Maven o desde el IDE:
./mvnw spring-boot:run
- Buscar libro por titulo (consumo de API Gutendex, registro en BD, evita duplicados).
- Listar todos los libros registrados.
- Listar todos los autores registrados.
- Listar autores vivos en un anio determinado.
- Listar libros por idioma (ingles, espanol, frances, portugues).
- (Extra) Top 10 libros mas descargados desde la BD.
dto: objetos para mapear respuestas de Gutendex.model: entidades JPA (incluye la relacion muchos a muchos entre Libro y Autor).repository: interfaces Spring Data JPA para acceso a datos.service: logica de negocio, consumo de API y conversion de datos.LiteraluraApplication: clase principal y menu de la aplicacion de consola.
====== LiterAlura ======
1. Buscar libro por titulo
2. Listar libros registrados
3. Listar autores registrados
4. Listar autores vivos en un año
5. Listar libros por idioma
6. Top 10 libros mas descargados
0. Salir
========================
4
Ingrese el año:
1890
Autores vivos en 1890:
Autor: Stoker, Bram
Nacimiento: 1847
Fallecimiento: 1912
Libros: [Dracula]
Autor: Engels, Friedrich
Nacimiento: 1820
Fallecimiento: 1895
Libros: [The Communist Manifesto]
Desarrollado por Jhon Fernando Gomez Villa como parte del desafio LiterAlura de Alura Latam.
Educativo.