Como criar uma API REST em Java?

Criar uma API REST em Java é possível usando frameworks como Spring Boot, facilitando a exposição de serviços via HTTP.

Como criar uma API REST em Java?

As APIs REST são amplamente utilizadas para comunicação entre sistemas. Em Java, a forma mais eficiente de criar APIs RESTful é usando Spring Boot, um framework que simplifica o desenvolvimento de aplicações Java.

1. Criando um Projeto Spring Boot

Para iniciar um projeto Spring Boot, você pode usar o Spring Initializr :

  1. Acesse Spring Initializr .
  2. Escolha Java, a versão mais recente do Spring Boot e adicione as dependências:
    • Spring Web (para criar APIs REST).
    • Spring Boot DevTools (opcional, para desenvolvimento).
    • Lombok (para reduzir código boilerplate).
  3. Baixe o projeto e importe na sua IDE (Eclipse, IntelliJ, VS Code).

2. Criando um Controller REST

Um Controller é responsável por lidar com requisições HTTP. Veja um exemplo básico:

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/api")
public class MeuController {

    @GetMapping("/hello")
    public String dizerOla() {
        return "Olá, mundo! Esta é minha primeira API REST em Java.";
    }
}

Explicação:

  • @RestController define que esta classe trata requisições REST.
  • @RequestMapping("/api") define um prefixo para os endpoints.
  • @GetMapping("/hello") cria um endpoint que responde com Olá, mundo!.

3. Criando um Endpoint Que Retorna JSON

APIs REST geralmente retornam JSON. Para isso, podemos criar uma classe modelo e um endpoint que retorna uma lista de objetos.

import java.util.List;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/api")
public class ProdutoController {

    @GetMapping("/produtos")
    public List<Produto> listarProdutos() {
        return List.of(
            new Produto(1, "Notebook", 3500.00),
            new Produto(2, "Smartphone", 2000.00)
        );
    }
}

class Produto {
    private int id;
    private String nome;
    private double preco;

    public Produto(int id, String nome, double preco) {
        this.id = id;
        this.nome = nome;
        this.preco = preco;
    }

    public int getId() { return id; }
    public String getNome() { return nome; }
    public double getPreco() { return preco; }
}

Explicação:

  • Criamos a classe Produto com três atributos.
  • listarProdutos() retorna uma lista de produtos no formato JSON.

4. Rodando a API e Testando com Postman

  1. Inicie o projeto na sua IDE (Run as → Spring Boot App).
  2. Abra o navegador ou o Postman e acesse:
    • http://localhost:8080/api/hello → Retorna Olá, mundo!
    • http://localhost:8080/api/produtos → Retorna uma lista de produtos em JSON.

Conclusão

Criar uma API REST em Java com Spring Boot é simples e eficiente. Com apenas algumas anotações, podemos definir endpoints e manipular dados no formato JSON. Para continuar aprimorando, você pode integrar um banco de dados com Spring Data JPA e adicionar autenticação com JWT.

Com o crescimento das arquiteturas baseadas em microsserviços, APIs REST se tornaram o padrão para comunicação entre aplicações. Em Java, o Spring Boot tornou o desenvolvimento de APIs muito mais prático, eliminando grande parte da configuração manual exigida por frameworks mais antigos. Além disso, sua compatibilidade com bibliotecas como Jackson facilita o consumo e retorno de dados em JSON.

Algumas aplicações:

  • Criação de microsserviços
  • Desenvolvimento de APIs para aplicações web e mobile
  • Integração entre sistemas diferentes
  • Comunicação entre bancos de dados e front-end

Dicas para quem está começando

  • Use o Spring Initializr para gerar seu projeto mais rapidamente
  • Comece criando endpoints simples antes de integrar banco de dados
  • Testes suas requisições com Postman ou cURL
  • Aprenda sobre Spring Data JPA para persistência de dados

Contribuições de Rodrigo Farias

Compartilhe este tutorial: Como criar uma API REST em Java

Compartilhe este tutorial

Continue aprendendo:

Como configurar um servidor Tomcat para rodar aplicações Java

O Apache Tomcat é um servidor de aplicações usado para rodar aplicações web Java, como Servlets e JSP.

Tutorial anterior

Como usar o Spring Boot para criar APIs REST

O Spring Boot simplifica a criação de APIs REST em Java, eliminando configurações complexas e acelerando o desenvolvimento.

Próximo tutorial