[Spring] - SpringBoot 3.x 버전에서 Swagger 사용하기
🛠️ 개발 환경
🍃 Spring : Spring Boot 3.1.3
🛠️ Java : Amazon corretto 17
📔 의존성
Spring 3.x 버전부터 springfox
라이브러리를 지원하지 않기 때문에 springdoc-openapi
라이브러리를 대신해 사용한다.
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.0.2'
🛠️ 적용
springfox
라이브러리를 사용할 경우 여러 설정을 해줘야했지만,
springdoc-openapi
은 설정 조차 필요없이 바로 사용할 수 있다.
public class TestController {
@Operation(
summary = "테스트 요청",
description = "테스트 요청에 대한 API"
)
@ApiResponses(value = {
@ApiResponse(responseCode = "200", description = "테스트 성공"),
@ApiResponse(responseCode = "204", description = "조회 데이터 없음"),
@ApiResponse(responseCode = "400", description = "쿼리 파라미터 오류")
})
@GetMapping("")
public ResponseData.ApiResult<Area> testApi() {
...
return ResponseData.success(area);
}
}
위와 같이 @Operation
를 이용해 API에 대한 설명을 작성할 수 있고,
@ApiResponse
를 통해 반환 데이터나 코드를 정의할 수 있다.
🧩 테스트
서버를 실행하고, 아래 URL을 통해 접속하면 API 명세를 자세하게 볼 수 있다.
http://localhost:8080/swagger-ui/index.html
댓글남기기