pchunter-api
PCHunter API
Posted on October 29, 2022
Existem diversas formas e ferramentas para se construir APIs, hoje inicio uma série de posts em que construo uma API simples usando Spring Boot e Kotlin para um app que eu e meus amigos criamos há um tempo.
O app Android que criamos servia para ajudar consumidores a montar PCs por meio da escolha das suas peças, como placa-mãe, processador, memória ram, etc. Como nosso app não tem um back-end próprio, o back-end é basicamente feito por meio do Firebase, então resolvi construir um back-end para ele.
A API vai ser basicamente um CRUD de um Setup, uma entidade composta por um nome e suas peças, as peças do Setup. Fazer um CRUD significa criar (Create), ler (Read), atualizar (Update) e deletar (Delete).
Nesse primeiro post nós vamos configurar e criar nosso projeto usando a ferramenta Spring Initializr do site do Spring Boot.
Spring Boot é um framework Java/Kotlin que facilita a criação de aplicações Web como APIs e webservices. Ele provê de forma default servidores como o Tomcat e dependências que simplificam a configuração do build.
Nessa série de posts nós vamos usar o Spring Boot para criar uma API RESTful para um CRUD básica usufruindo de algumas dependências do Spring como a Spring Web e a Spring Data JPA.
Para configurar o projeto, usaremos a ferramenta Spring Initializr que permite em poucos passos gerar um projeto Spring.
Ao acessarmos o site, nós deparamos que a tela de configuração completa, onde escolheremos a build tool do projeto, a linguagem, a versão do Spring Boot, os metadados do projeto, o tipo de empacotamento, a versão do Java e as dependências.
Como pode ver nosso projeto vai usar o build tool Gradle, a linguagem Kotlin, a versão 2.7.5 do Spring Boot, os metadados como Group
, que representa a organização que desenvolverá o projeto e o Artifact
, que se refere ao nome do projeto, é pchunter
, Jar como empacotamento e versão 11 do Java.
Agora quanto as dependências do nosso projeto, vamos usar as seguinte:
Pronto, basta clicar em GENERATE
e nosso projeto será baixado como .zip
!
Após extrair o projeto, basta abrirmos o projeto em alguma IDE que suporte desenvolvimento Web com Java/Kotlin. Eu optei pelo IntelliJ da Jetbrains porque ele dá suporte a Kotlin e Gradle de forma nativa.
Ao abrirmos o projeto, podemos ver a estrutura criada pelo Initializr como o pacote do projeto com o nosso Group como br.com.pchunter
, entre outros com os arquivos do gradle e do build.
Agora, vamos analizar o arquivo .kt
gerado automaticamente pelo Initializr, o PchunterApplication
. Esse arquivo é a classe padrão com o intuito de rodar o Spring Boot para nós.
Note que essa classe tem a annotation @SpringBootApplication
, ela serve para indicar a classe de configuração do Spring, ou seja, podemos realizar as configurações do nosso projeto a partir dessa classe.
Pronto, já podemos executar nosso projeto rodando a classe PchunterApplication
:
Note que nosso servidor já está operando na porta 8080, ou seja, nossa aplicação já está funcionando!
Ao acessarmos localhost:8080
podemos ver que o Spring Boot respondeu a requisição com um 404 porque ainda não configuramos nenhuma classe Controller
para receber a requisição e responder de alguma forma.
Nosso trabalho acaba por aqui 🤓
Segue repo do github:
Próximo post:
No próximo post vamos criar as classes referentes ao Setup e as funções de GET e POST para a nossa aplicação. Obrigado pela atenção e até a próxima!
Posted on October 29, 2022
Sign up to receive the latest update from our blog.