티스토리 뷰

728x90
반응형

Rest API 설계 및 구현을 도와주는 Swagger Tool은 개발자가 REST 웹 서비스를 설계, 빌드, 문서화, 소비하는 일을 도와주는 오픈소스 소프트웨어이다. 개발자들은 Swagger UI Tool을 통해 API를 식별하고, 자동화된 문서화, 코드 생성, 테스트 케이스 생성 지원이 포함된다.

Spring Boot Application에 Swagger 구성하기

1. Swagger Dependency Library 추가

... 
dependencies { 
... 
    // ## Swagger Library ## 
    compile('io.springfox:springfox-swagger2:2.7.0') 
    compile('io.springfox:springfox-swagger-ui:2.7.0') 
... 
} 
...

2. Refresh Gradle Project

> Gradle > Refresh Gradle Project

Library Update를 진행한다.

3. SwaggerConfig.java 파일 생성

package com.lgcns.nrson.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@Configuration
@EnableSwagger2
public class SwaggerConfig {
	@Bean
	public Docket api() {
		return new Docket(DocumentationType.SWAGGER_2).select()
				.apis(RequestHandlerSelectors.basePackage("com.lgcns.nrson")).paths(PathSelectors.any())
				.build();
	}
}

> basePackage 하위의 Rest API가 Swagger를 통해 관리된다.

4. Spring Boot Application 기동

5. swagger-ui.html 접속

1) http://localhost:8080/swagger-ui.html

2) hello-controller

> Try it out! 버튼 클릭 시 결과 조회 가능

이와 같이 Swagger를 통해 API를 사전 검증할 수 있는 테스트 환경을 제공 받을 수 있으며, HTTP Status Code 등을 확인할 수 있다.

728x90
반응형