티스토리 뷰
⑤ 개발, 데이터베이스/ⓢ Spring Boot
Rest API 관리 (Spring Boot Application + Swagger)
GodNR 2020. 9. 24. 23:44728x90
반응형
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
반응형
'⑤ 개발, 데이터베이스 > ⓢ Spring Boot' 카테고리의 다른 글
Gradle Include Project (settings.gradle) 활용 (0) | 2020.10.03 |
---|---|
Spring initializr 활용 (Template Project 생성) (0) | 2020.09.24 |
Spring Boot Embedded Tomcat Running (0) | 2020.09.06 |
Lombok 라이브러리 Eclipse 환경에 적용하기 (0) | 2020.09.06 |
[Spring Boot] Nexus2 -> Nexus3 Repository 업그레이드 (1) | 2019.07.29 |
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 오픈스택
- 마이크로서비스 아키텍처
- node.js
- OpenStack
- git
- apache
- MSA
- aws
- kubernetes
- TA
- 쿠버네티스
- Docker
- openstack tenant
- openstack token issue
- webtob
- SWA
- JEUS7
- wildfly
- JEUS6
- 마이크로서비스
- API Gateway
- 아키텍처
- k8s
- aa
- JBoss
- Architecture
- SA
- Da
- jeus
- nodejs
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함