Skip to content

repositório com a VERSÃO PESSOAL Do projeto prático "Desenvolvendo um sistema de gerenciamento de pessoas em API REST com Spring" da DIO

Notifications You must be signed in to change notification settings

MarceloJSSantos/projeto-versao-pessoal-sistema-gerenciamento-pessoas-dio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sistema de gerenciamento de pessoas em API REST com Spring Boot

Repositório com a VERSÃO PESSOAL do projeto prático "Desenvolvendo um sistema de gerenciamento de pessoas em API REST com Spring" da DIO


Neste projeto foi desenvolvido um pequeno sistema para o gerenciamento de pessoas através de uma API REST, criada com o Spring Boot.

Desenvolvimento

Foram desenvolvidas as seguintes tarefas:

  • Configurações iniciais de um 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 pessoas (Cadastro, leitura, atualização(integral) e remoção de pessoas do sistema) com o padrão arquitetural REST (GET, POST, PUT e DELETE)
  • Desenvolvimento de teste unitário para validação da funcionalidade (só para o método createPessoa, verificando a mensagem de retorno)
  • Implantação do sistema na nuvem através do Heroku

Tecnologias e Dependências utilizadas

  • Java 11
  • Maven 3.8.1
    • Lombok
    • Map Struct
    • H2 Database
  • Spring Boot (2.4.5)
    • Spring Boot DevTools

    • Spring Web

    • Spring Data JPA

    • Spring Boot Actuator

  • Git/GitHub para versionamento do código
  • Heroku para deploy na nuvem

Instalação e Execução

Para executar o projeto no terminal, digite o seguinte comando:

mvn spring-boot:run 

Após executar o comando acima, basta apenas abrir o endereço http://localhost:8080/api/v1 + RECURSO e visualizar a execução do projeto:

MÉTODO RECURSO RESULTADO
GET /pessoas retorna lista de pessoas
GET /pessoas/{id} retorna uma pessoa específica
POST /pessoas cria uma nova pessoa
PUT /pessoas/{id} atualiza, de forma integral, uma pessoa
DELETE /pessoas/{id} deleta uma pessoa

Exemplo de corpo da requisição POST

{
    "nomePrimeiro": "Carlos Cláudia",
    "nomeUltimo": "Santos Caldeira",
    "cpf": "222.830.390-96",
    "dataNascimento": "25-04-1970",
    "telefones": [
        { "tipo": "CELULAR", "numero": "(86)98340-2284" },
        { "tipo": "CASA", "numero": "(86)98001-2284" }
    ]
}

Exemplo de uma requisição PUT

{
        "id": 3,
        "nomePrimeiro": "Carlos Cláudia",
        "nomeUltimo": "Santos Caldeira",
        "cpf": "095.729.960-53",
        "dataNascimento": "25-04-1970",
        "telefones": [
            {
                "id": 5,
                "tipo": "CELULAR",
                "numero": "(21)98340-2284"
            },
            {
                "id": 6,
                "tipo": "CASA",
                "numero": "(21)98001-2284"
            }
        ]
    }

Melhorias futuras

  • Desenvolvimento de testes unitários para validação de outras funcionalidades (negócio)
  • Desenvolvimento de operações de outros métodos HTTP (PATCH, HEAD e OPTION)

About

repositório com a VERSÃO PESSOAL Do projeto prático "Desenvolvendo um sistema de gerenciamento de pessoas em API REST com Spring" da DIO

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages