springdoc swagger 사용하기
2023. 3. 9. 17:35ㆍ스프링
gradle에 의존성을 추가해준다.
implementation 'org.springdoc:springdoc-openapi-ui:1.6.9'
fox보단 doc이 최신이라하여 springdoc로 진행하였다.
yml파일에 아래 항목을 추가해준다
기본 응답 요청 타입을 json으로 해줬다.
springdoc:
default-consumes-media-type: application/json
default-produces-media-type: application/json
api-docs:
groups:
enabled: true
swagger-ui:
operations-sorter: alpha # alpha(알파벳 오름차순), method(HTTP메소드순)
tags-sorter: alpha # 태그 정렬 기준
path: /swagger-ui/index.html # html 문서 접속 경로
disable-swagger-default-url: true
display-query-params-without-oauth2: true
doc-expansion: none # tag, operation 펼치는 방식
paths-to-match:
- /**
스웨거를 빈으로 등록해주고 그룹핑도 하고 version별로도 관리할 수 있다.
@Configuration
public class SwaggerConfig {
@Bean
public OpenAPI openAPI() {
Info info = new Info()
.version("v1.0")
.title("일정관리 서비스 API")
.description("일정관리 서비스 API");
return new OpenAPI()
.info(info);
}
}
컨트롤러에서는 이렇게 사용하면 된다.
@Operation(operationId = "getUser", summary = "유저 목록 조회", description = "유저 목록 조회")
@ApiResponses(value = {
@ApiResponse(responseCode = "200", description = "Successful Operation", content = @Content(array = @ArraySchema(schema = @Schema(implementation = KwareUserDTO.class)))),
})
@GetMapping("/boards")
@Parameters({
@Parameter(name = "id", description = "유저 키", required = true)
})
'스프링' 카테고리의 다른 글
네이버 클라우드 sens 알림톡 발송 (0) | 2023.09.26 |
---|---|
yml 파일 암호화 (1) | 2023.08.29 |
스프링부트 다국어 설정 i18n (0) | 2023.03.09 |
spring-validation 사용법 rest방식 (0) | 2023.03.09 |
스프링부트 oauth 소셜로그인(카카오, 네이버, 구글) 구현 (0) | 2023.02.28 |