Skip to content

DomCarlosAdriano/searchBooks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📚 SearchBooks: Catálogo de Livros via Console

Uma aplicação de console em Java e Spring Boot para buscar, salvar e consultar livros e autores utilizando a API Gutendex.

Este é um projeto de estudo desenvolvido em Java com o framework Spring Boot.
A aplicação funciona como um catálogo de livros interativo, rodando diretamente no terminal.
Ela consome dados da API pública Gutendex para buscar livros e, em seguida, persiste essas informações (livros e autores) em um banco de dados PostgreSQL para consultas futuras.


✨ Funcionalidades Principais

O menu interativo no console permite ao usuário executar as seguintes ações:

  • Buscar Livro pelo Título: Consulta a API Gutendex em tempo real por um título de livro e salva o resultado no banco de dados local.
  • Listar Livros Registrados: Exibe todos os livros que já foram buscados e salvos no banco de dados.
  • Listar Autores Registrados: Mostra todos os autores dos livros salvos.
  • Listar Autores Vivos em um Determinado Ano: Permite ao usuário inserir um ano e exibe os autores que estavam vivos naquele período.
  • Listar Livros por Idioma: Filtra e exibe os livros registrados em um idioma específico (ex: en para inglês, pt para português).

🛠️ Tecnologias Utilizadas

  • Java 17
  • Spring Boot: Framework principal para a estrutura da aplicação.
  • Spring Data JPA: Para persistência de dados e comunicação com o banco de dados.
  • PostgreSQL: Banco de dados relacional.
  • Maven: Gerenciamento de dependências e build do projeto.
  • Jackson Databind: Conversão do JSON da API em objetos Java.
  • Gutendex API: Fonte pública de dados dos livros.

📁 Estrutura do Projeto

O código está organizado nos seguintes pacotes:

  • com.searchbooks.model
    Contém as entidades JPA (Autor, Book) que representam as tabelas do banco de dados e os DTOs (Resposta) para desserialização do JSON.

  • com.searchbooks.controller
    Inclui o repositório (RepositorioAutor) para interações com o banco de dados via Spring Data JPA.

  • com.searchbooks.service
    (Representado pela classe Search) Lógica para consumir a API externa.

  • com.searchbooks.view
    (Representado pela classe Principal) Classe responsável pela interface com o usuário no console (menu e interações).

  • SearchBooksApplication.java
    Ponto de entrada da aplicação Spring Boot (main).


👨‍💻 Feito com ❤️ por DomCarlosAdriano.

About

Uma aplicação de console em Java e Spring Boot para buscar, salvar e consultar livros e autores utilizando a API Gutendex.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages