게시판 프로젝트-4

이호영·2022년 8월 13일
0

board project

목록 보기
4/7

Swagger

백엔드 개발에 있어서 Web API를 문서화하기 위한 도구이며, 쉽게는 제품의 설명서라고도 생각할 수 있다.

간단한 설정으로 프로젝트의 API 목록을 웹에서 확인 및 테스트 가능하게 하는 라이브러리이고

특히 RESTful API를 문서화시키고 관리하는 것에 많이 쓰인다.

API 문서를 일반 문서로 작성하게 되면 API가 변경될 때마다 문서를 함께 수정해줘야 하는 번거로움이 있는데 SpringBoot에서는 Swagger를 사용하면 문서 수정을 자동화할 수 있다.

RESTful API 를 테스트할 수 있다는 것도 큰 장점이다.

Swagger 설정

build.gradle에 의존성을 추가한다.

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

application.yml

spring.mvc.pathmatch.matching-strategy=ant_path_matcher

config 패키지를 만들고 SwaggerConfig 클래스를 생성

@Configuration
public class SwaggerConfig {
    @Bean
    public Docket api() {
        return new Docket(DocumentationType.OAS_30)
                .useDefaultResponseMessages(false)
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.example.test"))
                .paths(PathSelectors.any())
                .build()
                .apiInfo(apiInfo());
    }
    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("Swagger Test")
                .description("SwaggerConfig")
                .version("3.0")
                .build();
    }
}

이전 포스트들을 보면 @ApiOperation annotation이 붙어있습니다.
swagger를 좀 더 쉽게 보기위해 제목을 설정할 수 있습니다.

swagger 접속

프로젝트를 실행하고 http://localhost:8812/board/swagger-ui/index.html로 접속한다.

저는 포트를 8812로 썼고 context-path를 /board로 설정했습니다.

0개의 댓글