API em Java (Spring Boot) para salvar partidas de futebol, persistindo os dados em um banco de dados relacional (MySQL).
Tecnologias
- Java 17 ou 21
- Spring Boot
- Persistir os dados em um banco de dados relacional (MySQL, Postgres, SQLite, H2, HSQLDB, etc.)
Operações básicas que a aplicação deverá permitir
- cadastrar uma partida, contendo no mínimo o nome dos clubes, o resultado da partida, a data e a hora da partida e o nome do estádio;
- atualizar os dados de uma partida;
- remover uma partida do cadastro;
Buscas
A aplicação deverá permitir a busca por:
- partidas que terminaram em uma goleada (3 ou mais gols de diferença para um dos clubes);
- partidas que terminaram sem gols para nenhum dos clubes;
- todas as partidas de um clube específico, podendo filtrar as partidas onde este clube atuou como mandante ou como visitante;
- todas as partidas de um estádio específico;
Validações
A aplicação não deverá permitir o cadastro ou a atualização:
- de uma partida antes das 8h ou após às 22h;
- de mais de uma partida em um mesmo estádio no mesmo dia;
- de mais de uma partida de um mesmo clube com menos de dois dias de intervalo;
- de uma partida sem conter o nome dos clubes, a data e a hora da partida e o nome do estádio;
- de uma partida com a data e a hora da partida no futuro;
- de uma partida sem conter o resultado, ou com valores negativos no resultado;
- IDE Java IntelliJ ou equivalente técnico
- Java JDK 17
- MySQL Community Server 8.0.35
- MySQL Workbench 8.0.34
- Post Man ou equivalente técnico
Garantir a instalação dos "Requisitos da máquina" listados anteriormente;
Clonar este projeto para a sua máquina e executar o seguinte comando dentro do MySQL WorkBench (ou outro software equivalente técnico):
create database soccer_matches_db
Abrir e executar o projeto dentro da IDE IntelliJ (ou outro software equivalente técnico);
Dentro do software Postman, importar a seguinte collection da raiz do projeto:
00_MELI_JavaSpringBoot_api_soccerMatches.postman_collection
Executar as requisições do CRUD, iniciando pelo POST.
Para consultar os registros no banco de dados, dentro do MySQL Workbench, digitar o seguinte comando:
SELECT * FROM soccer_matches_db.partida;
License