Construíndo uma API REST em Java [Parte1]

in #java7 years ago

E aí pessoal, tudo beleza?

No ano que passou tive uma grande evolução como desenvolvedor e dominando um pouco novas tecnologias, a vontade de passar o conhecimento adiante vem com força. Então, seguindo com esse desejo, hoje compartilho com desenvolvedores e qualquer outro interessados como é simples desenvolver uma API Rest em Java bem documentada. Para este post não ficar gigantesco, irei dividi-lo em algumas partes (quantas forem necessárias). Então vamos lá!

Algumas coisas que irei abordar nessa sequencia (ou série?): Pequenos resumos do conceito do que estamos utilizando, o desenvolvimento da API, a utilização de um git (BitBucket ou Github, irei decidir no decorrer do post), a publicação e geração da URL para utilização. Só lembrando que, mesmo sendo simples, é interessante um pouco de conhecimento no desenvolvimento.

Tecnologias que iremos utilizar nessa (série?) sequencia de posts: Java, Rest, SpringBoot, a API de dados do próprio Steemit, versionador GIT, Heroku (Servidor SaaS para realizar nosso deploy e gerar nossa URL) e JSON para tráfego dos dados.

Alguns conceitos básicos sobre tudo isso para quem é iniciante/entusiasta não se perder:

  • Java: Linguagem de programação orientada a objetos. Escolhi escrever com ela porque é a linguagem com a qual eu pago meu aluguel ..hehehe
  • REST: Sigla para REpresentational State Transfer. Em poucas e grossas palavras, ele é uma implementação de micros serviços que abstrai a implementação dos componentes e a sintaxe dos protocolos, focando na transferência da informação.
  • SpringBoot: Projeto da Spring que visa facilitar a configuração e utilização de aplicações WEB. Com a automatização das configurações do nosso projeto, teremos muito mais tempo para pensar nas nossas regras funcionando, sem quebrar a cabeça com XML's infinitos de configurações.
  • API do Steemit: O Steemit oferece diversos serviços para desenvolvedores, para exemplificar de forma bem simples, vou utilizar o serviço que retorna as informações dos usuários. As URL's e API's podem ser encontradas aqui
  • Versionador GIT: Sistema versionador de código com foco na produtividade. Como esse projeto será publico, provavelmente irei utilizar o meu GitHub mesmo
  • Heroku: O Heroku é uma plataforma as a Service (PaaS) da SalesForce. Ela oferece servidores gratuitos para deploy e utilização de pequenas aplicações. Pela facilidade, iremos utilizar uma maquina deles.

Ah, por ultimo e não menos importante, irei utilizar o Intellij como IDE de desenvolvimento. Se você for seguir o tutorial, a IDE utilizada fica a seu critério.

Iniciando nosso projeto...

Primeiramente, vamos acessar o site do SPRING INITIALIZR. Ele irá criar o esqueleto do nosso projeto já com as tecnologias que iremos utilizar. Basta ir adicionando as libs necessárias (de acordo com o que o Spring oferece) que o projeto virá praticamento pronto par ser utilizado. Como nossa aplicação é bem simples, a principio nenhuma dependência precisa ser incluída. Iremos gerar o projeto no padrão Maven Project, with Java e Spring 1.5.9.


Clique em "Generate Project" e a magia acontecerá...

Descompacte o projeto em um local de sua preferência e importe ele como "Maven Project" na sua IDE utilizada. Caso não saiba como, se você utilizar o Eclipse por seguir esse guia, caso use o Intellij esse guia.

Após a importação, esse é o nosso resultado:

No próximo post iremos iniciar a codificação do nosso projeto e incrementa-lo com algumas libs que iremos utilizar na API.

Lembrando que qualquer dúvida, crítica, sugestão e etc é só deixar na caixa de comentários que respondo o mais breve possível

Valeu!!

Sort:  

Irei acompanhar a série. Quem sabe fazer um exemplo em PHP haha

Opa, uma oportunidade de aprender mais sobre um assunto que tenho estudado bastante!! Grato por compartilhar, irei acompanhar!!

Coin Marketplace

STEEM 0.19
TRX 0.14
JST 0.030
BTC 64535.04
ETH 3462.08
USDT 1.00
SBD 2.49