Esta API, que permite o gerenciamento de chamados, foi desenvolvida visando sua utilização no projeto "Help Duck" (mais informações vide este link).
Aplicação desenvolvida por alunos do 3º semestre do tecnólogo em Desenvolvimento de Software Multiplataforma, na FATEC Profº Jessen Vidal - São José dos Campos, SP 🚀
As seguintes tecnologias e ferramentas foram utilizadas neste projeto: Java, Spring, MongoDB, Docker, Insomnia, Heroku
Para consumir esta API, é preciso seguir o passo a passo abaixo ou utilizar a URL do serviço em nuvem (através deste link: https://help-duck-tickets.herokuapp.com/tickets/).
- Tutorial para rodar o projeto
No arquivo application-dev.properties
, complete a variavel "spring.data.mongodb.uri" com a URI que o mongo disponibiliza ao logar na plataforma do MongoDB (Deployment -> Database -> connect -> connect your application). Se for localhost, utilize suas credenciais no formato da URI ( mongodb://:@localhost/ ):
Print do mongoDB atlas connect URI
spring.data.mongodb.uri=mongodb+srv://<username>:<password>@cluster0.rpjin.mongodb.net/myFirstDatabase?retryWrites=true&w=majority
Para prosseguir, é preciso que todas as ferramentas necessárias estejam devidamente instaladas (Java, Git, MongoDb...). Para conferir a instalação delas, acesse este tutorial. Após os downloads, baixe ou clone este repositório pelo terminal seguindo passo a passo descrito abaixo:
# Baixe este repositório ou clone pelo Git usando o comando:
$ git clone https://github.com/The-Bugger-Ducks/help-duck-tickets.git
# Acesse a pasta do projeto
$ cd help-duck-tickets
# Espere o Maven carregar as dependências do projeto (são listadas no arquivo pom.xml)
# Execute o projeto utilizando sua IDE preferida (Eclipse, VS Code, IntelliJ, etc.)
O servidor inciará localmente na porta 8081. Use o Insomnia para simular requisições e respostas das rotas (pelo link https://localhost:8081) ou utilize o projeto fron-end do "Help Duck" para executar as funcionalidades da aplicação (acesse o repositório por este link).
Pasta | Definição |
---|---|
📂 main/ .../ | Arquivos com o código fonte do projeto |
📂 main/ .../ config | Configuração de cors, csrf, etc |
📂 main/ .../ controller | Arquivos com os métodos de requisição das rotas |
📂 main/ .../ entity | Arquivos com funções mais especificas, ex: atualizador, adicionador de links para HATEOAS, etc |
📂 main/ .../ enums | Arquivos de padronização de entrada para campos específicos no banco de dados |
📂 main/ .../ interfaces | Arquivos que constam as interfaces criadas e utilizadas no projeto |
📂 main/ .../ model | Arquivos que fazem a aplicação de HATEOAS e manipulação de dados |
📂 main/ .../ repository | Arquivos para utilização de CRUD de entidades (collection - mongodb) do projeto |
📂 main/ .../ service | Arquivos que contém os serviços utilizados no projeto |
📄 main/ .../ HelpDuckTicketsApplication.java | Arquivo principal do projeto |
📂 main/ resources/ | Arquivos para configurações globais do projeto (ex: credenciais em banco de dados) |
📄 docker-compose | Arquivo usado para "conteinerizar" um banco mongo local |
📄 pom.xml | Arquivo usado gerenciar as dependencias do projeto com o Maven |