스프링 부트 3.x.x 버전에 swagger를 연동하는 방법은 조금 다릅니다. 스프링 부트 2.x.x보다 훨씬 간편해졌습니다.
build.gradle에 swagger를 추가합니다.
/* Swagger */
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.0.2'
main > java > config > 아래에 SwaggerConfig를 아래와 같이 작성합니다.
package com.portfolio.config;
import io.swagger.v3.oas.annotations.OpenAPIDefinition;
import io.swagger.v3.oas.annotations.info.Info;
import org.springframework.context.annotation.Configuration;
@OpenAPIDefinition(
info = @Info(title = "iraefolio API 명세서",
description = "iraefolio API 명세서",
version = "v1"))
@Configuration
public class SwaggerConfig {
}
Controller 상단에 @Tag 어노테이션을 추가합니다. 각 Controller에 @Operation 어노테이션을 추가하여 api에 대한 설명을 덧붙입니다.
@Tag(name = "review Controller", description = "review Controller")
@Log4j2
@RequiredArgsConstructor
@RequestMapping("/review")
@RestController
public class ReviewController {
private final ReviewService service;
/* PAGING */
@Operation(summary = "review paging", description = "/review로 이동합니다.")
@GetMapping
public ModelAndView review() {
ModelAndView mav = new ModelAndView("review");
return mav;
}
프로젝트를 실행하고 swagger index 페이지로 이동합니다.(http://localhost:8080/swagger-ui/index.html#/)