Skip to content

REST API com Spring Boot, usando autenticação com JWT e documentação com Swagger

License

Notifications You must be signed in to change notification settings

brunoliveiradev/SpringBoot-API-Rest-Alura

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spring Boot: Criando uma API Rest

Tecnologias   |    Projeto   |    Licença

PRs welcome! License


home


🚀 Tecnologias

Esses códigos foram desenvolvidos com as seguintes tecnologias:

💻 Projeto

🚀 O repositório tem como propósito compartilhar o conhecimento absorvido e os códigos desenvolvidos nos cursos Spring Boot API Rest: Construa uma API e Spring Boot API Rest: Segurança da API, Cache e Monitoramento proporcionado pela Alura.

⚡️ Criei resumos e anotações no Notion das partes relevantes com a minha visão de aluno. Clique aqui para conferir.

☕ O Spring boot é um framework para Java bastante popular que pode ser utilizado tanto para a construção de aplicações web tradicionais, ou APIs REST, que são muito utilizadas no modelo de arquitetura de micro serviços.

👾 O propósito foi montar a API REST, baseada no modelo de fórum da Alura.

  • ✨ Na versão 1 da API, o foco foi construir as lógicas e endpoints para listar os tópicos que foram cadastrados, cadastrar novos tópicos, atualizar, excluir, basicamente fazer o "CRUD", testando com o Postman.
    • Validação com Bean Validation, personalizamos as mensagens de erro com o Controller Advice do Spring, e o acesso ao banco de dados, usando os Repositorys do Spring Boot Data JPA e MySQL.
  • ✨ Na versão 2 da API, implementamos novos recursos:
    • Configuramos a parte de paginação para listar os tópicos;
    • Utilizamos cache para melhorar desempenho;
    • Implementamos o módulo de segurança e a parte da autenticação, utilizando JSON Web Token. Todos os endpoints que precisam de autenticação temos que mandar o token do authorization no cabeçalho.
    • Utilizamos o Spring Boot Admin para fazer a parte do monitoramento;
    • Concluímos com a parte de documentação, com o Swagger, ele imprime todos os controllers, cada um dos endpoints, conseguimos testar por aqui também, simular todos os testes.
      • Documentação do Swagger UI via http://localhost:8080/api/v2/swagger-ui.html/.
      • No endpoint /auth você gera o token utilizando os parâmetros aluno@email.com e 123456.

💙 Caso queria testar localmente:

  • git clone https://github.com/brunoliveiradev/SpringBoot-API-Rest-Alura

📫 Espero que goste, qualquer dúvida ou sugestão me encontro a disposição! LinkedIn


📝 Licença

Esse projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.


Códigos feitos com ♥ by Bruno Oliveira! LinkedIn. 💙


About

REST API com Spring Boot, usando autenticação com JWT e documentação com Swagger

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •