Este projeto demonstra a construção de API REST com a utilização do Spring Boot.
Lista de artefatos utilizados:
- Segurança com jsonwebtoken: JWT (Javascript Web Token);
- Lombok para Getters, Setters, toString, construtores;
- Model Mapper para o mapeamento entre objetos das classes de modelo para DTO (Data Transfer Object);
- lang3 para manipulação de strings;
- JPA para ORM;
- MySQL para persitência em ambiente de produção;
- MariaBD e H2 para desenvolvimento e testes;
- Firebase Storage para armazenamento de imagens/arquivos;
- JUnit para testes unitários;
- Heroku para deploy do ambiente de produção.
Para executar o projeto no Heroku Local (como parte de um teste de integração), siga esses passos:
- Baixe e instale o Heroku CLI, link: https://devcenter.heroku.com/articles/heroku-cli#install-the-heroku-cli
- Abra um terminal na pasta raiz do projeto;
- Execute o seguinte comando: heroku local -p 8080 -f ./proc_local/Procfile (-p é a porta do servidor e -f o local do Procfile que você utilizará para essa execução).
- Ou execute esse comando: heroku local -p 8080
O comando da linha 3 roda no Heroku Local com o Bando de Dados Local (o MariaDB) do Profile ativo no ./proc_local/Procfile, o dev. Ou seja, tudo localhost. O comando da linha 4 roda no Heroku Local com o Banco de Dados Remoto (o MySQL) do Profile ativo no Procfile, o prod.
Observação: Se a execução nesse ambiente estiver "ok" significa que a integração do Heroku com o MySQL está "ok". Logo, ao fazer o deploy do app no Heroku (na nuvem) estará garantida essa integração.