Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • C CHL Corretora Wiki
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • CHL Corretora
  • CHL Corretora Wiki
  • Wiki
  • configuracao

configuracao · Changes

Page history
feat(architecture): adding api java configuration authored Aug 28, 2021 by Marlon Saldanha's avatar Marlon Saldanha
Hide whitespace changes
Inline Side-by-side
configuracao.md
View page @ e3fbb7a4
......@@ -11,9 +11,13 @@ Esta seção apresentará todas as configurações para executar o projeto.
- [Configurações Gerais](#configurações-gerais)
- [Clonando os Repositórios](#clonando-os-repositórios)
- [Frontend - Dashboard](#frontend-dashboard)
- [Configurando sua IDE](#configurando-a-ide)
- [Api - Java](#api-java)
- [Configurando a Máquina](#configurando-a-máquina)
- [Configurando sua IDE](#configurando-a-ide)
- [Configurando o Insomnia](#configurando-o-insomnia)
- [Frontend - Dashboard](#frontend-dashboard)
- [Configurando sua IDE](#configurando-a-ide-1)
- [Configurando a Máquina](#configurando-a-máquina-1)
- [Compilando](#compilando)
- [Executando](#executando)
......@@ -28,6 +32,113 @@ Para clonarmos um repositório, basta termos o Git instalado. Você pode baixá-
git clone http://tools.ages.pucrs.br/<group>/<project-name>.git
```
# Api - Java
## **Configurando a Máquina**
Primeiramente, iremos instalar a **JDK 8 do Java**. Você pode baixá-la [aqui](https://www.oracle.com/br/java/technologies/javase/javase-jdk8-downloads.html). Após a instalação, podemos executar o comando ```javac -version``` e devermos ver algo similar a isso (mas não exatamente esta versão):
![java-version](./resources/images/tutorial/java-version.png)
Para que possamos utilizar o gerenciador de dependências na IDE, precisamos instalar o **Maven**, que pode ser baixado [aqui](https://maven.apache.org/download.cgi). Após isso, siga [estas etapas](https://maven.apache.org/install.html) para a instalação. No fim, ao executarmos o comando ```mvn -v``` no terminal, devemos ter algo similar a isso:
![mvn-version](./resources/images/tutorial/mvn-version.png)
## **Configurando a IDE**
Para conseguirmos desenvolver com uma integridade melhor, iremos utilizar a IDE **Intellij Community Edition**. Você pode baixá-la [aqui](https://www.jetbrains.com/pt-br/idea/download/#section=windows). Após a instalação, siga os passos a baixo para executar o projeto:
- Passo 1: Abra sua IDE e verá uma tela similar a essa:
![select-project](./resources/images/tutorial/intellij-select-project.png)
Basta clicar em **Open**, navegar até a raíz do projeto clonado, e abrir o arquivo `pom.xml`, como na imagem abaixo:
![select-pom](./resources/images/tutorial/select-pom.png)
Depois, clique em **Open as Project**:
![open-as-project](./resources/images/tutorial/open-as-project.png)
Após isso, apenas espere as dependências serem instaladas. Atenção! Na primeira vez, é normal demorar para instalar.
Após estas etapas, estamos quase pronto para o desenvolvimento. O próximo passo, é configurarmos as variáveis de ambiente com as credenciais do banco de dados, pois elas não ficarão chumbadas no código por questões de segurança.
Com a IDE aberta, navegue até **Run** -> **Edit Configurations...** -> **Environment variables**:
![environments](./resources/images/tutorial/postgres-environments.png)
É importante que as variáveis tenha exatamente estes nomes, pois é com base nelas que o projeto sabe da onde puxar as credenciais de acesso à banco, como na imagem abaixo:
![properties](./resources/images/tutorial/application-properties.png)
Para nos certificarmos que está tudo ok, abra o terminal na raíz do projeto e digite o comando ```mvn spring-boot:run```, ou se preferir, através da IDE, navegue até o arquivo `src/main/java/com/chl/chl/ChlCorretoraApplication.java` e clique no ícone ▶:
![spring-play](./resources/images/tutorial/spring-play.png)
E depois, clique na opção **Run ChlCorretoraAp....main()**
No fim, você deverá ver no terminal a seguinte mensagem:
![started-server](./resources/images/tutorial/started-server.png)
Após isso, sua IDE já está configurada e o projeto está no ar!
## **Configurando o Insomnia**
Para que possamos testar nossos **endpoints**, podemos utilizar ferramentas específicas para requisições *REST*, pois por padrão, o navegador só consegue fazer requisições do tipo `get`. A sugestão para este projeto é utilizar o [InsomniaREST](https://insomnia.rest/). Após instalá-lo, siga os passos abaixo:
Abra o Insomnia e verá uma tela similar a esta:
![insomnia-dashboard](./resources/images/tutorial/insomnia-dashboard.png)
No canto superior direito, você clicará na opção **Create** e em seguida **Request Collection**. Escolha o nome que achar mais adequado.
![create-insomnia](./resources/images/tutorial/create-insomnia.png)
Você será direcionado para o dashboard da coleção recém criada. O que iremos configurar agora, é algo que vai nos facilitar a fazer as chamadas para que não precisemos digitar o endereço completo da url, toda vez que criarmos uma requisição nova. Clique em ***No environment*** e depois em **Manage Environments**.
![manage-environments](./resources/images/tutorial/manage-environments.png)
Iremos definir uma variável que irá apontar para o endereço onde a api está rodando, no nosso caso `http://localhost:8080`.
![create-environment](./resources/images/tutorial/create-environment.png)
Após isso, salve e retorne para a tela anterior, e selecione a variável que acabamos de criar:
![select-environment](./resources/images/tutorial/select-environment.png)
Com a api no ar, vamos criar uma requisição do tipo `get` no contexto `/product/all`. Siga o exemplo abaixo e clique em **New Request**:
![new-request](./resources/images/tutorial/new-request.png)
Em seguida, escolha um nome para a requisição e deixa ela configurada em `get`:
![new-request-get](./resources/images/tutorial/new-request-get.png)
Você verá que foi criado um novo item na esquerda:
![api-url-insomnia](./resources/images/tutorial/api-url-insomnia.png)
Na parte superior, onde temos o cursor indicando para digitarmos a URL da requisição, iremos pressionar **ctrl + espaço** ou **cmd + espaço** e iremos notar que temos nossa `baseUrl` disponível, criada anteriormente na sessão de `environments`:
![base-url-insomnia](./resources/images/tutorial/base-url-insomnia.png)
Iremos selecioná-la e em seguida, concatenar com `/product/all`. Ao final, deverá ficar assim:
![get-all-products](./resources/images/tutorial/get-all-products.png)
Agora, basta clicarmos em **Send** e vamos notar que teremos um resultado na parte direita, similar a este:
![json-payload-api](./resources/images/tutorial/json-payload-api.png)
Se você não está familiarizado com este formato de conteúdo, sugiro dar uma olhada em [JSON](https://www.json.org/json-en.html).
Podemos conferir no *log* da API que foi feita uma chamada para nossa instância do PostgresSQL, que está hospedado no heroku:
![postgres-select-product](./resources/images/tutorial/postgres-select-product.png)
Agora você está pronto para iniciar o desenvolvimento.
# Frontend Dashboard
## **Configurando a IDE**
......
Clone repository
  • Utilizando a wiki
    • adicionando imagens
    • escrevendo em markdown
    • wiki no editor de texto
  • arquitetura
  • banco_dados
  • configuracao
  • design_mockups
  • escopo
  • gerência
  • gitflow
  • Home
  • instrucoes
  • processo
  • testes