Swagger는 RESTful API를 설계, 빌드, 문서화, 테스트할 수 있도록 도와주는 오픈 소스 프레임워크다. 현재는 OpenAPI Specification (OAS)의 일부로 발전했으며, API 개발을 더욱 효율적으로 할 수 있도록 다양한 도구를 제공한다.
openapi: 3.0.0
info:
title: Sample API
description: Swagger를 사용한 간단한 API 예제
version: 1.0.0
paths:
/users:
get:
summary: 사용자 목록 조회
responses:
'200':
description: 성공
content:
application/json:
schema:
type: array
items:
type: string
Spring Boot에서는 springdoc-openapi 또는 springfox-swagger 라이브러리를 사용하여 Swagger 문서를 자동 생성할 수 있다.
springdoc-openapi 사용 예제build.gradle)dependencies {
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.1.0'
}
http://localhost:8080/swagger-ui.html로 접속하면 Swagger UI를 확인할 수 있다.Swagger는 RESTful API 문서를 자동으로 생성하고, 테스트하며, 클라이언트 SDK 및 서버 코드까지 생성할 수 있는 강력한 도구다. Java 기반(Spring Boot) 프로젝트에서 API를 체계적으로 관리하려면 springdoc-openapi를 활용하는 것이 좋다.