From 051deef767c3e969644c14774d45fe0c246ef1fd Mon Sep 17 00:00:00 2001 From: wangkang Date: Fri, 22 Dec 2017 11:25:33 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=86swagger=E6=8B=86=E5=87=BA=E6=9D=A5?= =?UTF-8?q?=E5=81=9A=E6=88=90=E5=8F=AF=E9=80=89=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 7 + udf-starter-swagger2/pom.xml | 23 +++ .../itkk/udf/swagger2}/Swagger2Config.java | 172 +++++++++--------- 3 files changed, 116 insertions(+), 86 deletions(-) create mode 100644 udf-starter-swagger2/pom.xml rename {udf-starter-core/src/main/java/org/itkk/udf/core => udf-starter-swagger2/src/main/java/org/itkk/udf/swagger2}/Swagger2Config.java (95%) diff --git a/pom.xml b/pom.xml index cd4a89e..5c6adba 100644 --- a/pom.xml +++ b/pom.xml @@ -34,6 +34,7 @@ udf-starter-core + udf-starter-swagger2 udf-starter-rms udf-starter-cors udf-starter-amqp-rabbitmq @@ -77,6 +78,12 @@ udf-starter-core ${udf-starter.version} + + + org.itkk.udf + udf-starter-swagger2 + ${udf-starter.version} + org.itkk.udf diff --git a/udf-starter-swagger2/pom.xml b/udf-starter-swagger2/pom.xml new file mode 100644 index 0000000..d0beecf --- /dev/null +++ b/udf-starter-swagger2/pom.xml @@ -0,0 +1,23 @@ + + + 4.0.0 + + udf-starter-swagger2 + udf-starter-swagger2 + jar + http://itkk.org:81 + + + org.itkk.udf + udf-starter + 1.0 + + + + + org.itkk.udf + udf-starter-core + + + diff --git a/udf-starter-core/src/main/java/org/itkk/udf/core/Swagger2Config.java b/udf-starter-swagger2/src/main/java/org/itkk/udf/swagger2/Swagger2Config.java similarity index 95% rename from udf-starter-core/src/main/java/org/itkk/udf/core/Swagger2Config.java rename to udf-starter-swagger2/src/main/java/org/itkk/udf/swagger2/Swagger2Config.java index b9219eb..8a8014a 100644 --- a/udf-starter-core/src/main/java/org/itkk/udf/core/Swagger2Config.java +++ b/udf-starter-swagger2/src/main/java/org/itkk/udf/swagger2/Swagger2Config.java @@ -1,86 +1,86 @@ -/** - * Swagger2Config.java - * Created at 2016-10-02 - * Created by wangkang - * Copyright (C) 2016 itkk.org, All rights reserved. - */ -package org.itkk.udf.core; - -import org.springframework.beans.factory.annotation.Value; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.web.bind.annotation.RestController; -import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; -import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; -import springfox.documentation.builders.ApiInfoBuilder; -import springfox.documentation.builders.PathSelectors; -import springfox.documentation.builders.RequestHandlerSelectors; -import springfox.documentation.service.ApiInfo; -import springfox.documentation.spi.DocumentationType; -import springfox.documentation.spring.web.plugins.Docket; -import springfox.documentation.swagger2.annotations.EnableSwagger2; - -/** - * 描述 : 配置api文档 - * - * @author wangkang - */ -@Configuration -@EnableSwagger2 -public class Swagger2Config { - - /** - * 描述 : 系统版本 - */ - @Value("${info.build.version}") - private String version; - - /** - * 描述 : 系统名称 - */ - @Value("${info.build.name}") - private String projectName; - - /** - * 描述 : addResourceHandlers - * - * @return WebMvcConfigurerAdapter - */ - @Bean - public WebMvcConfigurerAdapter addResourceHandlers() { - return new WebMvcConfigurerAdapter() { - @Override - public void addResourceHandlers(ResourceHandlerRegistry registry) { - registry.addResourceHandler("swagger-ui.html") - .addResourceLocations("classpath:/META-INF/resources/"); - registry.addResourceHandler("/webjars/**") - .addResourceLocations("classpath:/META-INF/resources/webjars/"); - } - }; - } - - /** - * 描述 : createRestApi - * - * @return createRestApi - */ - @Bean - public Docket createRestApi() { - return new Docket(DocumentationType.SWAGGER_2) - .apiInfo(apiInfo()).select() - .apis(RequestHandlerSelectors.withClassAnnotation(RestController.class)).paths(PathSelectors.any()) - .build(); - } - - /** - * 描述 : apiInfo - * - * @return apiInfo - */ - private ApiInfo apiInfo() { - ApiInfoBuilder apiInfoBuilder = new ApiInfoBuilder(); - apiInfoBuilder.title(this.projectName + " online api document"); - apiInfoBuilder.version(version); - return apiInfoBuilder.build(); - } -} +/** + * Swagger2Config.java + * Created at 2016-10-02 + * Created by wangkang + * Copyright (C) 2016 itkk.org, All rights reserved. + */ +package org.itkk.udf.swagger2; + +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; +import springfox.documentation.builders.ApiInfoBuilder; +import springfox.documentation.builders.PathSelectors; +import springfox.documentation.builders.RequestHandlerSelectors; +import springfox.documentation.service.ApiInfo; +import springfox.documentation.spi.DocumentationType; +import springfox.documentation.spring.web.plugins.Docket; +import springfox.documentation.swagger2.annotations.EnableSwagger2; + +/** + * 描述 : 配置api文档 + * + * @author wangkang + */ +@Configuration +@EnableSwagger2 +public class Swagger2Config { + + /** + * 描述 : 系统版本 + */ + @Value("${info.build.version}") + private String version; + + /** + * 描述 : 系统名称 + */ + @Value("${info.build.name}") + private String projectName; + + /** + * 描述 : addResourceHandlers + * + * @return WebMvcConfigurerAdapter + */ + @Bean + public WebMvcConfigurerAdapter addResourceHandlers() { + return new WebMvcConfigurerAdapter() { + @Override + public void addResourceHandlers(ResourceHandlerRegistry registry) { + registry.addResourceHandler("swagger-ui.html") + .addResourceLocations("classpath:/META-INF/resources/"); + registry.addResourceHandler("/webjars/**") + .addResourceLocations("classpath:/META-INF/resources/webjars/"); + } + }; + } + + /** + * 描述 : createRestApi + * + * @return createRestApi + */ + @Bean + public Docket createRestApi() { + return new Docket(DocumentationType.SWAGGER_2) + .apiInfo(apiInfo()).select() + .apis(RequestHandlerSelectors.withClassAnnotation(RestController.class)).paths(PathSelectors.any()) + .build(); + } + + /** + * 描述 : apiInfo + * + * @return apiInfo + */ + private ApiInfo apiInfo() { + ApiInfoBuilder apiInfoBuilder = new ApiInfoBuilder(); + apiInfoBuilder.title(this.projectName + " online api document"); + apiInfoBuilder.version(version); + return apiInfoBuilder.build(); + } +}