Swagger - xx10222/selab-todo-list GitHub Wiki

Swagger

  • Swagger란 개발한 REST API를 편리하게 문서화해주고, 이를 통해서 편리하게 API를 호출하고 테스트할 수 있는 프로젝트이다
  • Swagger에 대한 종합적인 구성을 간편하게 추가하고, configuration 파일 없이도 간결하게 프로젝트를 관리하고 싶다면 SpringFox Boot Starter에 대한 의존성을 추가하면 된다

SwaggerConfig.java

@Configuration
public class SwaggerConfig {

	@Bean
	public Docket api() {
		return new Docket(DocumentationType.OAS_30)
				.useDefaultResponseMessages(false)
				.select()
				.apis(RequestHandlerSelectors.basePackage("com.velog.eunjy.controller"))
				.paths(PathSelectors.any())
				.build()
				.apiInfo(apiInfo());
	}
	
	private ApiInfo apiInfo() {
		return new ApiInfoBuilder()
				.title("Swagger Test")
				.description("SwaggerConfig")
				.version("3.0")
				.build();
	}
	
}
  • configuration 파일인 SwaggerConfig.java 파일이다
  • Docket : Swagger 설정의 핵심이 되는 Bean
  • useDefaultResponseMessages : Swagger에서 제공해주는 기본 응답 코드 (200, 401, 403, 404)
  • false : 기본 응답 코드를 노출하지 않음
  • apis : api 스펙이 작성되어 있는 패키지(Controller)를 지정
  • paths : apis에 있는 API 중 특정 path를 선택한다
  • apiInfo : Swagger UI로 노출할 정보

Swagger 어노테이션

image

⚠️ **GitHub.com Fallback** ⚠️