Skip to content

Meu primeiro projeto solo utilizando Spring ("netBank")

Notifications You must be signed in to change notification settings

KauaVilasBoas/netBank-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

API NetBank

Olá, seja muito bem vindo ao meu primeiro projeto solo utilizando Spring👋🏼

Este é um projeto de uma APIRest do "NetBank".

🗂️ Sumário

  • Funcionalidades
  • Tecnologias Utilizadas
  • Configurações
  • Como Executar
  • Endpoints
  • Observações
  • Autor
  • Contato
  • 📑Funcionalidades

    • Listar todas as contas cadastradas
    • Cadastrar uma nova Conta
    • Excluir uma Conta
    • Efetuar um saque
    • Efetuar depósito
    • Efetuar transferência

    🖥️Tecnologias Utilizadas

    • Java
    • Spring
    • JPA / Hibernate
    • PostgreSQL
    • JDBC
    • Lombok
    • Spring Validation

    ⚙️Configurações

    Antes de executar o projeto, é necessário realizar as seguintes configurações:

    1. Configurar o banco de dados PostgreSQL e criar o banco de dados "contas".
    2. Modificar as informações de conexão com o banco de dados (URL, usuário e senha) no pacote resources/application.properties

    ❓Como Executar

    1. Clone ou faça o download do projeto para o seu ambiente de desenvolvimento.
    2. Importe o projeto para a sua IDE Java (Eclipse, IntelliJ, etc.).
    3. Realize as configurações necessárias conforme descrito acima.
    4. Start o projeto.
    5. Acesse a aplicação pelo Insomnia, Postman, etc. Utilizando as requisições abaixo.

    🌐Endpoints

    Endpoints Parameters Verb
    /contas/novaConta * POST
    /contas/getAll * GET
    /contas/{id} * DELETE
    /contas/saque * PUT
    /contas/deposito * PUT
    /contas/transferencia * PUT
    CRIAR CONTA - /contas/novaConta

    Descrição

    • Cria uma conta e instancia-a no banco de dados.

    Códigos de Resposta

    • 201: CREATED.

    Exemplo de Requisição

    • POST - /contas/novaConta
    • HTTP/1.1
    • Host: localhost:8080
    • Content-Type: application/json
    {
      "numero": 48976,
      "conta": 713,
      "cliente": {
          "nome": "Kauã",
          "sobrenome": "Vilas Boas",
          "email": "kaua@netbank.com.br",
          "cpf": "09158963156",
          "endereco": {
          "rua": "rua 7",
          "bairro": "bairro 7",
          "cidade": "Salvador",
          "numeroResidencial": "960"
          }
      
        }
      }

    Exemplo de Resposta

    • HTTP/1.1 201 CREATED
    • Content-Type: application/json
        Conta criada!
    LISTAR CONTAS - /contas/getAll

    Descrição

    Lista as contas contidas no banco de dados.

    Códigos de Resposta

    • 200: OK.

    Exemplo de Requisição

    • GET - /contas/getAll
    • HTTP/1.1
    • Host: localhost:8080

    Exemplo de Resposta

    • HTTP/1.1 200 OK
    • Content-Type: application/json
    [
    {
        "id": 1,
        "saldo": 923.0,
        "numero": 115789,
        "conta": 556,
        "cliente": {
            "nome": "Kaua",
            "sobrenome": "Vilas Boas",
            "cpf": "09158963544",
            "endereco": {
                "rua": "rua 1",
                "bairro": "bairro 1",
                "cidade": "Salvador",
                "numeroResidencial": 556
            }
        }
    },
    {
        "id": 7,
        "saldo": 0.0,
        "numero": 13245,
        "conta": 768,
        "cliente": {
            "nome": "Leonardo",
            "sobrenome": "Silva",
            "cpf": "09158963029",
            "endereco": {
                "rua": "rua 4",
                "bairro": "bairro 4",
                "cidade": "Salvador",
                "numeroResidencial": 416
            }
        }
    }
    ]
    EXCLUIR CONTA- /contas/{id}

    Descrição

    Deletar a conta.

    Códigos de Resposta

    • 204: No Content.

    Exemplo de Requisição

    • DELETE - /contas/{id}
    • HTTP/1.1
    • Host: localhost:8080
    EFETUAR SAQUE - /contas/saque

    Descrição

    Efetua um saque do saldo da conta.

    Códigos de Resposta

    • 200: OK!.

    Exemplo de Requisição

    • PUT /contas

    • Host: localhost:8080

      {
        "id": 1,
        "valor": "920.00"

    } ```

    Exemplo de Resposta

    • HTTP/1.1 200 OK
    • Content-Type: application/json
      Saque efetuado com sucesso - 2023-06-02T15:57:15.411927900
    EFETUAR DEPÓSITO - /contas/deposito

    Descrição

    Efetua um deposito para o saldo da conta.

    Códigos de Resposta

    • 200: OK!.

    Exemplo de Requisição

    • PUT /contas

    • Host: localhost:8080

      {
        "id": 1,
        "valor": "780.00"

    } ```

    Exemplo de Resposta

    • HTTP/1.1 200 OK
    • Content-Type: application/json
      Depósito efetuado com sucesso - 2023-06-02T15:57:15.411927900
    EFETUAR TRANSFERÊNCIA - /contas/transferencia

    Descrição

    Efetua uma transferência de uma quantia de saldo de uma conta para outra.

    Códigos de Resposta

    • 200: OK!.

    Exemplo de Requisição

    • PUT /contas

    • Host: localhost:8080

      {
          "idContaRemetente": "1",
          "valor": "200.00",
          "idContaDestino": "7"
      } ```
      

    Exemplo de Resposta

    • HTTP/1.1 200 OK
    • Content-Type: application/json
      Transferência realizada com sucesso! - 2023-06-02T15:12:54.502614100

    ❗Observações

    Este projeto é apenas uma demonstração básica de um banco ("netbank") utilizando Spring e Banco de Dados. Para fins de aprendizado e desenvolvimento.

    🖐️Autor

    Kauã Caldeira Vilas Boas

    📞Contato