1. 문제 원인 & 상황
(1) Spring Boot의 버전이 3.X.X 이상으로 버전업되면서 기존 SpringFox가 호환되지 않아 SwaggerConfig 설정이 꼬이는 문제가 발생했다.
2. 문제 해결 : Gradle
2-1. build.gradle에 의존성 추가
(1) build.gradle 기준으로 아래와 같은 Dependency를 추가한다.
(2) implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.0.2'
dependencies {
// Swagger(Spring 3.x.x 이상부터 SpringFox 대신, SpringDoc)
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.0.2'
}
2-2. SwaggerConfig.java
(1) 설정 정보를 아래와 같이 세팅한다.
package com.example.twojunlog.config;
import io.swagger.v3.oas.models.Components;
import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Info;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class SwaggerConfig {
@Bean
public OpenAPI openAPI() {
return new OpenAPI()
.components(new Components())
.info(apiInfo());
}
private Info apiInfo() {
return new Info()
.title("Spring Boot REST API Specifications")
.description("Specification")
.version("1.0.0");
}
}
2-3. Swagger 연동 확인
(1) 스프링 서버를 실행시킨 뒤 아래의 엔드포인트로 접속한다.
(2) http://localhost:8080/swagger-ui/index.html
(3) 정상적으로 아래와 같은 Swagger UI에 접속한 것을 확인할 수 있다.
※ 해당 포스팅에 대해 내용 추가가 필요하다고 생각되면 기존 포스팅 내용에 다른 내용이 추가될 수 있습니다.
개인적으로 공부하며 정리한 내용이기에 오타나 틀린 부분이 있을 수 있으며, 이에 대해 댓글로 알려주시면 감사하겠습니다!
'백엔드(Back-End) > Spring' 카테고리의 다른 글
[AWS S3, Spring] - AmazonS3Exception : The bucket does not allow ACLs 원인 & 문제 해결 (0) | 2024.04.25 |
---|---|
[Spring, H2] - 스프링에서 DB 테스트를 위한 H2 DB Configuration (0) | 2024.03.26 |
[Spring] - 객체 지향 설계 5대 원칙 (SOLID) (0) | 2023.02.15 |
[Spring] - 좋은 객체 지향 프로그래밍 기법이란? (0) | 2023.02.14 |
[Spring] - Spring Framework 개요 (0) | 2023.02.14 |
댓글