Um CRUD feito em Go.
- Crie uma nova pasta para o projeto com o comando
mkdir lets-crud. - Entre na nova pasta criada com o comando
cd lets-crud. - Execute o comando
go mod init letscrudpra definir o nome do módulo do projeto. - Instale o echo com o comando
go get github.com/labstack/echo/v4. - Crie o arquivo main.go.
- Execute o servidor com o comando
go run main.go. - Teste as rotas usando a URL
http://localhost:3000.
{
"cpf": "759.547.300-40",
"name": "Felipe da Silva Santos",
"birthDate": "2001-11-18"
}
{
"cpf": "995.694.610-98",
"name": "João Pedro da Silva Santos",
"birthDate": "2020-06-11"
}- Criar o esquema do banco de dados.
- Criar banco de dados no MySQL.
- Criar conexão com o banco de dados.
- Criar domain.
- Criar models.
- Tratar erros.
- Criar repositories.
- Criar interfaces.
- Implementar métodos.
- Criar cliente.
- Listar todos os clientes.
- Listar um cliente específico.
- Atualizar um cliente específico.
- Remover um cliente específico.
- Criar services.
- Criar interfaces.
- Implementar métodos.
- Criar cliente.
- Listar todos os clientes.
- Listar um cliente específico.
- Atualizar um cliente específico.
- Remover um cliente específico.
- Criar endpoints.
- Criar rotas.
- Criar handlers.
- Criar cliente.
- Listar todos os clientes.
- Listar um cliente específico.
- Atualizar um cliente específico.
- Remover um cliente específico.
- Criar DTOs.
- Criar requests.
- Criar responses.
- Criar função de validação de CPFs.
- Criar os testes da camada de repository.
- Criar os testes da camada de service.
- Criar os testes da camada de handler.
go get -u github.com/go-sql-driver/mysql
sudo mysqlDROP DATABASE IF EXISTS letscrud;
CREATE DATABASE letscrud;
USE letscrud;
CREATE TABLE customer (
id SERIAL PRIMARY KEY,
cpf VARCHAR(11) UNIQUE NOT NULL,
name VARCHAR(200) NOT NULL,
birthDate DATE
);