You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
clean-parking/src/main/java/egovframework/config/SwaggerConfig.java

74 lines
2.4 KiB
Java

5 months ago
package egovframework.config;
import io.swagger.v3.oas.models.Components;
import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Info;
import io.swagger.v3.oas.models.info.License;
import org.springdoc.core.GroupedOpenApi;
import org.springdoc.core.SpringDocUtils;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* Swagger UI
* OpenAPI 3.0 API .
* .
* @Controller .
*/
@Configuration
public class SwaggerConfig {
static {
// @Controller 어노테이션이 있는 클래스도 스캔하도록 설정
SpringDocUtils.getConfig().addAnnotationsToIgnore(RequestMapping.class);
}
/**
* API GroupedOpenApi .
*
* @return GroupedOpenApi
*/
@Bean
public GroupedOpenApi allApi() {
return GroupedOpenApi.builder()
.group("All")
.packagesToScan("go.kr.project")
.pathsToMatch("/**")
.build();
}
/**
* API GroupedOpenApi .
*
* @return GroupedOpenApi
*/
@Bean
public GroupedOpenApi loginApi() {
return GroupedOpenApi.builder()
.group("Login")
.packagesToScan("go.kr.project.login")
.pathsToMatch("/login/**")
.build();
}
/**
* OpenAPI .
* API (, , ) .
*
* @return OpenAPI
*/
@Bean
public OpenAPI openAPI() {
Info info = new Info()
.title("XIT Framework API")
.description("XIT Framework API 문서 - 세션 기반 인증 사용")
.version("v1.0.0")
.license(new License().name("Apache 2.0").url("http://springdoc.org"));
return new OpenAPI()
.components(new Components())
.info(info);
}
}