본문 바로가기
springboot

[springboot] 스프링부트 2점대에 swagger 3점대 연결

by 개발LOG 2024. 4. 14.
  • 스프링부트 2.7 버전
  • gradle
  • Swagger 3.0.0

1. build.gradle에 의존성 추가

// Swagger
	implementation 'io.springfox:springfox-boot-starter:3.0.0'

 

 

2. application.properties에 설정 추가

# Swagger
spring.mvc.pathmatch.matching-strategy=ant_path_matcher

 

 

3. SwaggerConfig 추가

package com.pnow.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;

@Configuration
public class SwaggerConfig {
    @Bean
    public Docket api() {
        return new Docket(DocumentationType.OAS_30)
                .useDefaultResponseMessages(true) // Swagger 에서 제공해주는 기본 응답 코드를 표시할 것이면 true
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.any()) // Controller가 들어있는 패키지. 이 경로의 하위에 있는 api만 표시됨.
                .paths(PathSelectors.any()) // 위 패키지 안의 api 중 지정된 path만 보여줌. (any()로 설정 시 모든 api가 보여짐)
                .build();
    }

    public ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("SpringBoot Rest API Documentation")
                .description("API")
                .version("1.0.0")
                .build();
    }

}

 

 

4. http://localhost:8080/swagger-ui/index.html 로 접속

 

스웨거 3점대는 index.html로 접속해야 나온다.