[Swagger] Spring Boot, Gradle 환경에서 Swagger 적용하기
1. Spring Boot 환경 설정
1-1. build.gradle
- 최신 버전인 Swagger 3.x 버전을 적용
- Swagger 2.x 버전보다 간단하게
springfox-boot-starter
하나 추가로 필요한 모든 라이브러리 포함 가능
// Swagger
implementation 'io.springfox:springfox-boot-starter:3.0.0'
1-2. SwaggerConfig.java
- configuration 파일
SwaggerConfig.java
추가 - Docket: Swagger 설정의 핵심이 되는 Bean
- useDefaultResponseMessages : Swagger에서 제공해주는 기본 응답 코드 (200, 401, 403, 404)
- false : 기본 응답 코드 노출하지 않음
- apis : api 스펙이 작성되어 있는 패키지(Controller)를 지정
- paths : apis에 있는 API 중 특정 path를 선택
- apiInfo : Swagger UI로 노출할 정보
@Configuration
public class SwaggerConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.OAS_30)
.useDefaultResponseMessages(false)
.select()
.apis(RequestHandlerSelectors.basePackage("com.velog.eunjy.controller"))
.paths(PathSelectors.any())
.build()
.apiInfo(apiInfo());
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("Swagger Test")
.description("SwaggerConfig")
.version("3.0")
.build();
}
}
1-3. 접속
- Spring Boot 로컬 실행 후 URL 접속
- 아래와 같이 접속
- Swagger2 : http://localhost:8080/swagger-ui.html
- Swagger3 : http://localhost:8080/swagger-ui/index.html
- Swagger UI가 적용된 것을 확인
Try it out
버튼을 사용해 API를 테스트할 수 있음
1-4. 기타
- ConfigurableSiteMeshFilter, WebMvcConfigurer(Interceptor) 관련하여 '/swagger-ui/*' 경로에 대해 예외 처리 필요
- 가이드 문서 링크 https://swagger.io/docs/specification/about/
Author And Source
이 문제에 관하여([Swagger] Spring Boot, Gradle 환경에서 Swagger 적용하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@ynjch97/Swagger-Spring-Boot-Gradle-환경에서-Swagger-적용하기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)