Skip to content

lamorenove-dev2025/literAllura2025

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📚 LiterAlura – Catálogo de Libros en Consola Bienvenido/a a LiterAlura, un proyecto del programa Oracle Next Education (ONE) junto a Alura Latam. Este desafío consiste en la creación de un catálogo de libros en el cual la persona usuaria puede registrar, consultar y gestionar libros mediante consola, conectándose a la API Gutendex y almacenando la información en una base de datos PostgreSQL.


🚀 Tecnologías utilizadas • Java 17 • Spring Boot 3.2.x • Spring Data JPA • PostgreSQL • Maven • Gutendex API (basada en Project Gutenberg)


⚙️ Requisitos previos Antes de comenzar, asegúrate de tener instalado: • Java JDK 17+ • Maven • PostgreSQL • IDE recomendado: IntelliJ IDEA o Eclipse


📌 Funcionalidades principales La aplicación cuenta con 5 funcionalidades básicas:

  1. Buscar libro por título o La persona usuaria ingresa el nombre de un libro. o La aplicación consulta en Gutendex API, recupera sus datos y los registra en la base de datos. o Ejemplo: Pride → se registra Pride and Prejudice (Jane Austen).
  2. Listar libros registrados o Muestra todos los libros guardados en la base de datos.
  3. Listar autores registrados o Muestra todos los autores, evitando duplicados.
  4. Listar autores vivos en un año específico o La persona usuaria ingresa un año (ej. 1600) y la aplicación devuelve los autores que estaban vivos en ese año.
  5. Listar libros por idioma o La persona usuaria ingresa un código de idioma (EN, ES, FR, PT) y obtiene los libros disponibles en ese idioma. 🔹 Validaciones incluidas: • Evita registrar un mismo libro más de una vez. • Informa cuando no se encuentra un libro en la API.

📂 Estructura del proyecto literalura/ ├── src/main/java/com/alura/literalura/ │ ├── model/ # Entidades JPA │ ├── repository/ # Repositorios Spring Data JPA │ ├── service/ # Lógica de negocio │ └── controller/ # Menú interactivo en consola ├── src/main/resources/ │ └── application.properties # Configuración de PostgreSQL ├── pom.xml # Dependencias Maven


🛠️ Instalación y ejecución

  1. Clona este repositorio:
  2. git clone https://github.com/tuusuario/literalura.git
  3. cd literalura
  4. Configura la base de datos en application.properties:
  5. spring.datasource.url=jdbc:postgresql://localhost:5432/literalura
  6. spring.datasource.username=postgres
  7. spring.datasource.password=tu_password
  8. spring.jpa.hibernate.ddl-auto=update
  9. Ejecuta el proyecto con Maven:
  10. mvn spring-boot:run
  11. Interactúa con el menú en consola:
  12. ===== LITERALURA =====
  13. 1 - Buscar libro por título
  14. 2 - Listar libros registrados
  15. 3 - Listar autores registrados
  16. 4 - Listar autores vivos en un año
  17. 5 - Listar libros por idioma
  18. 0 - Salir

🌐 API Gutendex La aplicación consume la API pública Gutendex, basada en Project Gutenberg, con más de 70.000 libros disponibles de manera gratuita. Ejemplo de consulta: GET https://gutendex.com/books/?search=pride


💡 Sugerencias adicionales Además de las funcionalidades básicas, se recomienda: • Implementar filtros avanzados (por género, número de descargas, etc.). • Añadir paginación a las consultas. • Mejorar el manejo de errores y excepciones. • Crear pruebas unitarias con JUnit y Mockito.


🤝 Contribución

  1. Haz un fork del repositorio
  2. Crea una nueva rama:
  3. git checkout -b feature/nueva-funcionalidad
  4. Realiza tus cambios y haz commit
  5. Envía un pull request

📜 Licencia Este proyecto es de uso educativo bajo la licencia MIT.


¿Quieres que lo prepare en inglés también (README bilingüe) para que quede más universal?

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages