스웨거설치 (1)

💻 Programming

[5분코딩] 스프링 부트에 스웨거 v3.x 연동하기

자동생성된 스웨거 API 문서

스웨거는 백엔드에서 개발한 API를 문서화해주는 툴로 개발 진행중일 때 뿐만아니라 운영중에도 유용하게 사용되기도 하는데요

스웨거 버전이 3으로 올라가면서 설정 및 기본 url이 변경이 되었습니다.

스웨거 버전 업에 두어번 실패한 끝에 가장 간단히 해결할 수 있는 방법을 구해왔습니다.

 

스프링부트 스웨거 설정

버전은 스프링부트 2.4.0, 스웨거 3.0.0 입니다.

 

1. 스프링 부트와 스웨거 의존성 추가

메이븐프로젝트

<dependency>
	<groupId>io.springfox</groupId>
	<artifactId>springfox-boot-starter</artifactId>
	<version>3.0.0</version>
</dependency>
<dependency>
	<groupId>io.springfox</groupId>
	<artifactId>springfox-swagger-ui</artifactId>
	<version>3.0.0</version>
</dependency>

 

그래들 프로젝트

repositories {
	jcenter()
}

dependencies {
	implementation "io.springfox:springfox-boot-starter:3.0.0"
	implementation "io.springfox:springfox-swagger-ui:3.0.0"
}

 

2. 설정하기

SwaggerConfig 클래스를 하나 만들어서 아래와 같이 @Configuration 어노테이션을 붙여주고 Docket 빈을 하나 생성하면 됩니다.

좀 더 상세한 설정을 하려면 공식사이트에서 확인가능합니다.

@Configuration
public class SwaggerConfig {

	@Bean
	public Docket api() {
	return new Docket(DocumentationType.SWAGGER_2)
		.select()
		.apis(RequestHandlerSelectors.any())
		.paths(PathSelectors.any())
		.build();
	}
}

 

3. 접속 URL

기존의 2.x 버전까지는 host<:port>/<context root>/swagger-ui.html 로 접속을 했었다면, v3부터는 host<:port>/<context root>/swagger-ui/ 또는 host<:port>/<context root>/swagger-ui/index.html 로 접속을 하면 됩니다.

 

 

 

참고문서: https://springfox.github.io/springfox/docs/current/