- Esta API foi desenvolvida em Java usando Spring Boot 3 e utiliza o padrão de projeto Façade para realizar operações CRUD em uma entidade de cliente.
- O banco de dados utilizando é o H2, um banco em memória, que é apagado cada vez que o projeto é inicializado.
- A aplicação também se integra com o serviço ViaCEP para obter informações de endereço quando necessário.
- Após rodar o projeto, utilize Postman ou Insomnia para testar as requisições
- A URL base para acessar as funcionalidades é
localhost:8080/clientes
URL: localhost:8080/clientes
Descrição: Cria um novo cliente. Caso o enderecoId não exista no banco de dados, a aplicação busca o endereço no ViaCEP e o salva.
Estrutura JSON:
{
"nome": "",
"cpf": "",
"enderecoId": 0,
"cep": ""
}
URL: localhost:8080/clientes/{id}
Descrição: Atualiza um cliente existente. Caso o enderecoId não exista no banco de dados, a aplicação busca o endereço no ViaCEP e o salva.
Estrutura JSON:
{
"id": 1,
"nome": "",
"cpf": "",
"enderecoId": 1,
"cep": ""
}
URL: localhost:8080/clientes/{id}
Descrição: Retorna as informações do cliente conforme o id enviado.
Estrutura JSON:
{
"id": 1,
"nome": "",
"cpf": "",
"endereco": {
"id": 1,
"cep": "00000-000",
"logradouro": "",
"complemento": "",
"bairro": "",
"localidade": "",
"uf": "",
"ibge": "",
"gia": "",
"ddd": "",
"siafi": ""
}
}
URL: localhost:8080/clientes
Descrição: Retorna uma lista de todos os clientes cadastrados.
Estrutura JSON:
[
{
"id": 1,
"nome": "Karen",
"cpf": "02100000000",
"endereco": {
"id": 1,
"cep": "00000-000",
"logradouro": "",
"complemento": "",
"bairro": "",
"localidade": "",
"uf": "",
"ibge": "",
"gia": "",
"ddd": "",
"siafi": ""
}
}
]
URL: localhost:8080/clientes/{id}
Descrição: Deleta um cliente existente pelo id informado.