Thursday, December 15, 2016

Spring-boot에 Swagger2 설정

RESTful API를 만들 경우에는 문서화가 중요하고, API문서와 코드와의 변경 사항을 반영하는 것은 지루한 일입니다.

일반적으로 Swagger를 사용할 경우에는 @Api, @ApiOperation과 같은 Annotation을 사용하여Swagger에 보여질 내용을 설정하게 됩니다.

Swagger2의 구현체인 Springfox를 사용할 경우에는 이런 부분들이 자동화되게 됩니다.

타겟 프로젝트

REST 서비스는 아래의 URL을 참조하여 Swagger2를 적용할 수 있도록 생성해야 합니다. (본 문서의 범주가 아니므로 링크로 대체합니다.)


메이븐 의존성 추가

생성한 프로젝트의 pom.xml 내에 아래의 의존성을 추가합니다.

프로젝트에 설정하기

Swagger 설정은 Docket Bean으로 합니다.

위의 설정을 통해 스프링 부트에 Swagger2를 통합할 수 있습니다.

확인하기

설정이 완료되었으면, 스프링 부트 어플리케이션을 실행하여 아래의 URL로 확인할 수 있습니다.

http://localhost:8080/{your-app-root}/v2/api-docs


JSON type의 response를 보게 되면 올바르게 설정이 된 겁니다. Swagger에서는 보다 편하게 확인하기 위해 Swagger-UI를 제공해줍니다.

#Swagger-UI로 확인하기

이미 Swagger-UI 의존성을 pom.xml에 추가하였기에, 브라우저에서 아래의 URL로 확인합니다.
http://localhost:8080/{your-app-root}/swagger-ui.html



기타 고급 설정에 대한 부분은 아래의 참조 URL을 확인하세요.
테스트에 사용된 Full-source는
https://github.com/giljae/sandbox/tree/master/swagger-springboot에서 확인할 수 있습니다.

참조

  • http://www.baeldung.com/swagger-2-documentation-for-spring-rest-api

0 comments:

Post a Comment