This project has been done together with the classes from the GFT Start #2 Bootcamp from 2021 on DIO.
The README bellow was writen using as guide the file writen and shared by the expert during the classes.
Digital Innovation: GFT Start #2 - Desenvolvendo um sistema de gerenciamento de pessoas em API REST com Spring Boot
Neste projeto foi desenvolvido um pequeno sistema para o gerenciamento de pessoas de uma empresa através de uma API REST, criada com o Spring Boot.
Durante o projeto, foram desenvolvidos e abordados os seguintes tópicos:
- Setup inicial de projeto com o Spring Boot Initialzr
- Criação de modelo de dados para o mapeamento de entidades em bancos de dados
- Desenvolvimento de operações de gerenciamento de usuários (Cadastro, leitura, atualização e remoção de pessoas de um sistema).
- Relação de cada uma das operações acima com o padrão arquitetural REST, e a explicação de cada um dos conceitos REST envolvidos durante o desenvolvimento do projeto.
- Desenvolvimento de testes unitários para validação das funcionalidades
- Implantação do sistema na nuvem através do Heroku
Após executar o comando acima, basta apenas abrir o seguinte endereço e visualizar a interface Swagger que te ajudará a consumir e entender a API:
http://localhost:8080/swagger-ui.html
Neste projeto desenvolvido em conjunto durante a aula foram usadas as seguintes técnologias:
- Java 11.
- Maven 4.0.0
- Intellj IDEA Community Edition.
- Controle de versão GIT instalado na sua máquina.
- Conta no GitHub para o armazenamento do projeto na nuvem.
- Conta no Heroku para o deploy do projeto na nuvem.
- Spring Boot, Spring Web, Spring JPA, H2 banco de dados em memória, Spring Validation,
- MapStruct para mapeamento de objetos DTO e de banco de dados e Projeto Lombok.
- SpringFox Swagger2, interface para documentação de APIs.
Abaixo, seguem links bem bacanas, sobre tópicos relacionados ao projeto:
- Referência do Intellij IDEA Community, para download
- Palheta de atalhos de comandos do Intellij
- Site oficial do Spring
- Site oficial do Spring Initialzr, para setup do projeto
- Site oficial do Heroku
- Site oficial do GIT
- Site oficial do GitHub
- Documentação oficial do Lombok
- Documentação oficial do Map Struct
- Documentação Swagger
- Documentando uma API Spring Boot com Swagger
- Documentação JUnit
- Referência para o padrão arquitetural REST
Neste link, seguem os slides apresentados pelo expert como o roteiro durante as aulas para o desenvolvimento do projeto.