Swagger란?
- API 명세를 자동으로 문서화하고, UI를 통해 API를 직접 테스트할 수 있는 툴
- 스프링부트에서는
springdoc-openapi-ui
라이브러리로 쉽게 연동 가능
주요 설정 포인트
@Operation
, @Parameter
어노테이션으로 API별 설명 추가 가능
OpenAPI
빈 등록 시 API 정보, 서버, 보안 스키마 설정 가능
- JWT 인증 시
SecurityScheme
에 Bearer Token 등록 필수
- API 호출 시 Swagger UI에서 파라미터 입력, 요청 전송, 응답 확인 가능
Swagger Config 예시 (JWT 보안 포함)
@Configuration
public class SwaggerConfig {
@Bean
public OpenAPI openAPI() {
return new OpenAPI()
.components(new Components()
.addSecuritySchemes("bearer-jwt",
new SecurityScheme()
.type(SecurityScheme.Type.HTTP)
.scheme("bearer")
.bearerFormat("JWT")
.in(SecurityScheme.In.HEADER)
.name("Authorization")
))
.info(new Info()
.title("Shopping Mall API")
.description("쇼핑몰 REST API 문서")
.version("1.0.0"))
.addSecurityItem(new SecurityRequirement().addList("bearer-jwt"));
}
}
Swagger UI 접속
- 기본 URL:
http://localhost:8080/swagger-ui.html
또는 http://localhost:8080/swagger-ui/index.html
- JWT 토큰 입력 후 보호된 API 테스트 가능