Como escrever uma REST API em Java em 30 minutos
O desenvolvimento web moderno é impensável sem REST API — um estilo arquitetônico que permite que clientes e servidores troquem dados pelo protocolo HTTP. Java, graças à sua confiabilidade e enorme ecossistema, continua sendo uma das melhores linguagens para criar serviços de backend. Neste artigo, mostraremos como escrever uma REST API completa em Java usando Spring Boot — o framework mais popular para microsserviços — em 30 minutos. Você criará um serviço CRUD simples para gerenciar uma lista de tarefas (Todo List), que pode ser implantado e testado imediatamente.
O que é REST API e por que Java?
REST (Representational State Transfer) é um conjunto de princípios onde cada recurso (por exemplo, usuário, tarefa ou produto) tem uma URL única, e a interação ocorre por meio de métodos HTTP padrão: GET (obter), POST (criar), PUT (atualizar) e DELETE (excluir). Java com o framework Spring Boot fornece anotações e ferramentas prontas para implementar uma REST API em questão de minutos. Você não precisa analisar JSON manualmente ou configurar o servidor — o Spring faz tudo isso.
Guia passo a passo: escrevendo uma REST API em Java em 30 minutos
Passo 1. Configuração do projeto e dependências
A maneira mais rápida de começar é usar o Spring Initializr. Selecione os seguintes parâmetros:
- Project: Maven
- Language: Java
- Spring Boot: 3.2.0 (ou a versão estável mais recente)
- Dependencies: Spring Web, Spring Data JPA, H2 Database
Clique em "Generate", baixe o arquivo ZIP e descompacte-o. Abra o projeto na sua IDE (IntelliJ IDEA, Eclipse ou VS Code). O arquivo pom.xml deve conter as seguintes dependências:
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>runtime</scope> </dependency></dependencies>O banco de dados H2 é um SGBD in-memory embutido que não requer instalação. Para produção, você o substituirá por PostgreSQL ou MySQL.
Passo 2. Criação do modelo de dados (Entity)
Crie um pacote model e, dentro dele, a classe TodoItem.java. Esta será a entidade que é mapeada para uma tabela no banco de dados.
package com.example.demo.model;
import jakarta.persistence.*;
@Entity@Table(name = "todos")public class TodoItem {
@Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id;
@Column(nullable = false) private String title;
private boolean completed;
// Construtores public TodoItem() {}
public TodoItem(String title, boolean completed) { this.title = title; this.completed = completed; }
// Getters e Setters public Long getId() { return id; } public void setId(Long id) { this.id = id; }
public String getTitle() { return title; } public void setTitle(String title) { this.title = title; }
public boolean isCompleted() { return completed; } public void setCompleted(boolean completed) { this.completed = completed; }}Aqui usamos anotações JPA: @Entity informa ao Spring que a classe é uma tabela, @Id é a chave primária e @GeneratedValue é a geração automática de ID.
Blogs
Book Recommendations
Leia também
Testes em Go: Unit, Integration, E2E — guia completo
Expressões regulares em Go com exemplos: guia completo