Este projeto é uma API REST desenvolvida em Java com Spring Boot. Este README fornece instruções detalhadas para instalação, configuração e execução do projeto.
- Acesse o site oficial do JDK 17.
- Baixe o instalador apropriado para o seu sistema operacional.
- Siga as instruções de instalação.
Criar variável de ambiente JAVA_HOME:
- Abra o Painel de Controle.
- Vá em Sistema > Configurações avançadas do sistema > Variáveis de Ambiente.
- Clique em "Nova" em Variáveis do sistema e adicione:
- Nome:
JAVA_HOME
- Valor:
C:\Caminho\Para\jdk-17
- Nome:
- Acesse o site oficial do DBeaver.
- Baixe o instalador apropriado para o seu sistema operacional.
- Siga as instruções de instalação.
- Acesse o site oficial do Maven.
- Baixe o arquivo binário.
- Extraia o conteúdo do arquivo para uma pasta de sua escolha.
- Adicione a pasta
bin
do Maven à sua variável de ambientePATH
.
Criar variável de ambiente M2_HOME:
- Abra o Painel de Controle.
- Vá em Sistema > Configurações avançadas do sistema > Variáveis de Ambiente.
- Clique em "Nova" em Variáveis do sistema e adicione:
- Nome:
M2_HOME
- Valor:
C:\Caminho\Para\apache-maven-3.x.x
- Nome:
- Acesse o site oficial do Docker.
- Siga as instruções de instalação para o seu sistema operacional.
Login no Docker pelo Terminal:
Para fazer login no Docker Hub, execute o comando abaixo. Insira seu nome de usuário e senha do Docker Hub quando solicitado:
docker login -u <seu-usuario> -p <sua-senha>
Siga as instruções do site oficial para a instalação do Docker Compose: Instalação do Docker Compose.
Importante: Lembre-se de inicializar o Docker Desktop antes de executar qualquer comando relacionado ao Docker. Importante: Este passo deve ser concluído antes de realizar a configuração no Banco de Dados.
Para criar e iniciar os containers Docker, navegue até o diretório onde está localizado o arquivo database-docker
e execute o seguinte comando:
docker-compose up -d
Atenção: este projeto está sendo criado localmente.
Para configurar corretamente sua conexão no DBeaver, certifique-se de que o nome do banco de dados seja feedbackfusion_database
. Siga os passos abaixo:
-
Abrir o DBeaver:
- Inicie o DBeaver no seu computador.
-
Criar uma Nova Conexão:
- Clique no ícone de Nova Conexão (ícone de plug) ou vá em Arquivo > Nova Conexão.
-
Escolher o Banco de Dados:
- Escolha PostgreSQL (ou o tipo de banco de dados que você está utilizando) na lista e clique em Avançar.
-
Configurar a Conexão:
- Preencha os detalhes da conexão com os seguintes valores:
- Host:
0.0.0.0
(caso o banco esteja configurado para aceitar conexões dessa interface). - Porta:
5432
(ou outra porta configurada para o PostgreSQL). - Database:
feedbackfusion_database
(é fundamental que este seja o nome exato do banco). - Usuário: postgres.
- Senha:
123
.
- Host:
- Clique em Testar Conexão para garantir que a conexão está correta.
- Preencha os detalhes da conexão com os seguintes valores:
-
Salvar a Conexão:
- Se o teste de conexão for bem-sucedido, clique em Concluir para salvar e finalizar a configuração.
Agora você poderá executar o script SQL para criar a tabela diretamente no DBeaver com a conexão configurada.
Utilize o seguinte script SQL para criar a tabela no DBeaver:
CREATE TABLE usuario (
id BIGSERIAL NOT NULL,
pontuacao_total INT DEFAULT 0 NOT NULL,
status_monitor BOOLEAN DEFAULT FALSE NOT NULL,
email VARCHAR(150) NOT NULL,
senha VARCHAR(80) NOT NULL,
nome VARCHAR(100) NOT NULL,
empresa VARCHAR(100) NOT NULL,
departamento VARCHAR(50) NOT NULL,
cargo VARCHAR(50) NOT NULL,
avatar VARCHAR(100) NULL
);
ALTER TABLE usuario ADD CONSTRAINT usuario_pk PRIMARY KEY (id);
CREATE TABLE feedback (
id BIGSERIAL NOT NULL,
gestor_id BIGINT NOT NULL,
colaborador_id BIGINT NOT NULL,
titulo VARCHAR(150) NOT NULL,
descricao TEXT NOT NULL,
data_criacao DATE NOT NULL,
data_edicao DATE NULL
);
ALTER TABLE feedback ADD CONSTRAINT feedback_pk PRIMARY KEY (id);
ALTER TABLE feedback ADD CONSTRAINT fk_gestor FOREIGN KEY (gestor_id) REFERENCES usuario(id);
ALTER TABLE feedback ADD CONSTRAINT fk_colaborador FOREIGN KEY (colaborador_id) REFERENCES usuario(id);
- Executar o Script:
-
Executar o Script SQL:
- Clique no ícone Executar SQL (ou pressione Ctrl + Enter) para executar o script.
- Verifique a aba de Resultados para confirmar que a tabela foi criada com sucesso.
-
Verificando a Tabela Criada:
- Atualizar o Banco de Dados:
- No painel esquerdo, expanda o banco de dados onde você criou a tabela, clique com o botão direito e selecione Atualizar para ver a nova tabela listada.
- Visualizar Estrutura da Tabela:
- Expanda a tabela usuario para visualizar suas colunas e confirmar que foi criada conforme o script.
- Expanda a tabela feedback para visualizar suas colunas e confirmar que foi criada conforme o script.
- Atualizar o Banco de Dados:
Com esses passos, você terá configurado a conexão e criado a tabela com sucesso no DBeaver.
Para executar o projeto FeedbackFusionRestApiApplication, inicie a aplicação a partir do método main
. Isso irá inicializar o servidor e tornar sua API disponível para interações.
- Abra o Postman.
- Configure as requisições para interagir com sua API.
- Use as URLs e métodos apropriados (GET, POST, etc.) de acordo com a sua implementação.
Criar Usuário:
- Método: POST
- URL:
http://localhost:8080/usuarios
- Corpo:
{
"email": "[email protected]",
"senha": "senha123",
"nome": "Leticia Branca de Barros Motta",
"empresa": "Exemplo Ltda",
"departamento": "Desenvolvimento",
"cargo": "Desenvolvedora",
"avatar": "https://api.dicebear.com/9.x/bottts/svg?seed=leticia"
}
Listar Usuários:
- Método: GET
- URL:
http://localhost:8080/usuarios
Obter Usuário por ID:
- Método: GET
- URL:
http://localhost:8080/usuarios/{id}
Substitua{id}
pelo ID do usuário desejado.
Atualizar Usuário:
- Método: PUT
- URL:
http://localhost:8080/usuarios/{id}
Substitua{id}
pelo ID do usuário a ser atualizado. - Corpo:
{
"email": "[email protected]",
"senha": "novaSenha123",
"nome": "Leticia Branca de Barros Motta",
"empresa": "Exemplo Ltda",
"departamento": "Desenvolvimento",
"cargo": "Desenvolvedora",
"avatar": "https://api.dicebear.com/9.x/bottts/svg?seed=leticia"
}
Deletar Usuário:
- Método: DELETE
- URL:
http://localhost:8080/usuarios/{id}
Substitua{id}
pelo ID do usuário a ser deletado.