=================
Desafio da formação AluraOne, da plataforma Alura.
OBJETIVO: Desenvolver um Catálogo de Livros que ofereça interação textual (via console) com os usuários, proporcionando no mínimo 5 opções de interação.
Os livros serão buscados através de uma API específica, a Gutendex.
Métodos necessários:
1 - Buscar o livro pelo título
2 - Listar livros registrados
3 - Listar autores registrados
4 - Listar autores vivos em um determinado ano
5 - Listar livros em um determinado idioma
✅Concluido✅
Dentro do pacote br.com.alura.literAlura.resources no arquivo application.properties, foi utilizado de variaveis de ambiente para o host (localhost), username e senha do banco de dados
Portanto caso queira rodar o projeto será necessário criar estas variaveis de ambiente
No pacote br.com.alura.literAlura a classe LiterAluraAplication é necessária para rodar o projeto e se tratando de uma aplicação no terminal ela implementa a interface CommandLineRunner
Ela vai instanciar a classe br.com.alura.literAlura.view.Principal e chamar o método exibirMenu() atráves desse método todos os métodos do desafio podem ser executados
As classes br.com.alura.literAlura.service.ConsumoApi, br.com.alura.literAlura.model.Resultado ,br.com.alura.literAlura.model.DadosAutor e br.com.alura.literAlura.model.DadosLivro são utilizadas para:
- ConsumoApi: Consumo da API Gutendex
- Resultado: Intermediaria para conversão do JSON para as classes DadosAutor e DadosLivro, através de anotações e métodos da biblioteca Jackson
- DadosAutor e DadosLivro: recebem os dados para a criação das classes entidade Autor e Livro
As classes br.com.alura.literAlura.model.Autor e br.com.alura.literAlura.model.Livro representam as tabelas que serão usadas no banco de dados, através de anotações da biblioteca Spring Data JPA
As interfaces br.com.alura.literAlura.repository.AutorRepository e br.com.alura.literAlura.repository.LivroRepository herdam da interface JpaRepository posibilitando o uso de derived queries para mainupulação do banco de dados
Elas vão ser atributos da classe br.com.alura.literAlura.view.Principal pois necessitam que a classe br.com.alura.literAlura.LiterAluraAplication utilize a anotação @AutoWired para deixar claro que o SpringBoot vai gerenciar elas
Utilizando o primeiro método para adicionar ao banco de dados o livro "Dom Casmurro" do autor "Machado de Assis"
Novamente com o primeiro método para adicionar o livro "The Great Gatsby(O grande Gatsby) " do autor "F. Scott Fitzgerald"
Agora escolhendo o segundo método, para listar os livros registrados
Com o terceiro método, para listar os autores registrados
Usando o quarto método e escolhendo um ano limite para mostrar apenas dentre os autores registrados, quais estavam vivos naquele ano
a exemplo dentre os dois autores registrados, quais estavam vivos em 1910?
Por fim o quinto método, supondo que eu queira ver apenas os livros em português, vou adicionar mais um livro brasileiro antes
-
Linguagem
-
FrameWork e bibliotecas:
-
Banco de dados
-
API
-
Gerenciador de dependencias
Agradeço a Alura e todos os professores da formação por todo o aprendizado passado e desafios propostos.











