Introdução
A documentação é uma parte essencial do desenvolvimento de APIs, pois fornece informações claras e precisas sobre como os serviços podem ser consumidos. O OpenAPI e o Swagger são duas ferramentas populares usadas para documentar APIs. Neste artigo, você aprenderá como implementar a geração automática de OpenAPI e Swagger em uma API Java usando o Spring Boot. O Spring Boot é um framework que simplifica o desenvolvimento de aplicativos Java, incluindo APIs.
Pré-requisitos:
Antes de começarmos, certifique-se de ter o seguinte ambiente configurado:
- Java Development Kit (JDK) instalado.
- Um ambiente de desenvolvimento integrado (IDE) Java, como Eclipse ou IntelliJ IDEA.
- O Spring Boot configurado em seu ambiente.
Passo 1: Configuração do projeto Comece criando um novo projeto Spring Boot em sua IDE. Você pode fazer isso selecionando a opção “New Project” ou “New Spring Starter Project”, dependendo da sua IDE.
Passo 2: Adicionar dependências Para habilitar a geração automática de OpenAPI e Swagger em sua API, você precisará adicionar as seguintes dependências ao arquivo pom.xml do seu projeto:
<dependencies> <!-- ... outras dependências do Spring Boot ... --> <dependency> <groupId>org.springdoc</groupId> <artifactId>springdoc-openapi-ui</artifactId> <version>1.5.12</version> </dependency> </dependencies>
Essa dependência adicionará o suporte necessário para a geração automática do OpenAPI e o Swagger UI ao seu projeto.
Passo 3: Configurar a classe principal Em sua classe principal, você precisará adicionar algumas anotações para habilitar a geração automática do OpenAPI e Swagger. Aqui está um exemplo:
import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.Bean; import org.springdoc.core.GroupedOpenApi; import org.springdoc.core.SwaggerUiConfigParameters; import org.springdoc.core.SwaggerUiConfigParameters.SwaggerUiConfig; @SpringBootApplication public class YourApplication { public static void main(String[] args) { SpringApplication.run(YourApplication.class, args); } @Bean public GroupedOpenApi groupedOpenApi() { return GroupedOpenApi.builder() .group("api") .pathsToMatch("/api/**") .build(); } @Bean public SwaggerUiConfigParameters swaggerUiConfigParameters() { return new SwaggerUiConfigParameters() .addSwaggerUiConfig( new SwaggerUiConfig().setDeepLinking(true).setDisplayOperationId(true)) .setValidatorUrl(null); } }
Nesse exemplo, a anotação @SpringBootApplication
é usada para marcar a classe principal do Spring Boot. As anotações @Bean
são usadas para configurar o agrupamento do OpenAPI e as configurações do Swagger UI.
Passo 4: Criar controladores da API Agora, você pode começar a criar seus controladores da API usando o Spring MVC. Aqui está um exemplo de um controlador 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 HelloController { @GetMapping("/hello") public String hello() { return "Hello, world!"; } }
Nesse exemplo, o controlador é mapeado para o caminho “/api” e possui um método hello()
que retorna uma mensagem simples.
Passo 5: Executar a API e acessar o Swagger UI Agora, você pode executar sua aplicação Spring Boot e acessar o Swagger UI. Por padrão, o Swagger UI estará disponível em http://localhost:8080/swagger-ui.html.
Ao acessar o Swagger UI, você verá a documentação gerada automaticamente para a sua API. Ele mostrará detalhes sobre os endpoints, como os caminhos, os métodos HTTP suportados e até mesmo permitirá que você faça testes interativos nos endpoints.
Conclusão
Neste artigo, você aprendeu como implementar a geração automática de OpenAPI e Swagger em uma API Java usando o Spring Boot. O Spring Boot torna esse processo muito mais simples, permitindo que você adicione algumas dependências e anotações para habilitar a documentação automática da sua API. O Swagger UI fornece uma interface amigável para visualizar e testar sua API. Com essa abordagem, você pode garantir uma documentação atualizada e consistente para seus serviços.
Lembre-se de que a documentação da API é fundamental para facilitar o uso e a integração com seus serviços. Manter a documentação sempre atualizada pode economizar tempo para você e seus colegas desenvolvedores, além de melhorar a experiência dos usuários que consomem sua API. Portanto, considere a geração automática de OpenAPI e Swagger como uma prática recomendada em seus projetos Java com Spring Boot.