123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- package com.yihu.iot.config;
- import com.yihu.jw.rm.iot.IotRequestMapping;
- import io.github.swagger2markup.GroupBy;
- import io.github.swagger2markup.Language;
- import io.github.swagger2markup.Swagger2MarkupConfig;
- import io.github.swagger2markup.Swagger2MarkupConverter;
- import io.github.swagger2markup.builder.Swagger2MarkupConfigBuilder;
- import io.github.swagger2markup.markup.builder.MarkupLanguage;
- import org.springframework.context.annotation.Bean;
- import org.springframework.context.annotation.ComponentScan;
- import org.springframework.context.annotation.Configuration;
- import springfox.documentation.service.ApiInfo;
- import springfox.documentation.spi.DocumentationType;
- import springfox.documentation.spring.web.plugins.Docket;
- import springfox.documentation.swagger2.annotations.EnableSwagger2;
- import java.net.URL;
- import java.nio.file.Path;
- import java.nio.file.Paths;
- import static com.google.common.base.Predicates.or;
- import static springfox.documentation.builders.PathSelectors.regex;
- @Configuration
- @EnableSwagger2
- @ComponentScan("com.yihu.iot.**")
- public class SwaggerConfig {
- public static final String Iot_API = "iot";
- @Bean
- public Docket iotAPI() {
- return new Docket(DocumentationType.SWAGGER_2)
- .groupName(Iot_API)
- .useDefaultResponseMessages(false)
- .forCodeGeneration(false)
- .pathMapping("/")
- .select()
- .paths(or(
- regex("/" + IotRequestMapping.api_iot_common + "/.*")
- ))
- .build()
- .apiInfo(iotApiInfo());
- }
- private ApiInfo iotApiInfo() {
- ApiInfo iotInfo = new ApiInfo("基卫2.0API",
- "基卫2.0API,提供医疗物联网相关服务。",
- "1.0",
- "No terms of service",
- "wenfujian@jkzl.com",
- "The Apache License, Version 2.0",
- "http://www.apache.org/licenses/LICENSE-2.0.html"
- );
- return iotInfo;
- }
- /**
- * 生成html文章专用
- *
- * @param args
- * @throws Exception
- */
- public static void main(String[] args) throws Exception {
- //String groupName="system";
- String groupName="iot";
- URL remoteSwaggerFile = new URL("http://127.0.0.1:10050//v2/api-docs?group="+groupName);
- Path outputFile = Paths.get("svr/svr-iot/build/"+groupName);
- Swagger2MarkupConfig config = new Swagger2MarkupConfigBuilder()
- .withMarkupLanguage(MarkupLanguage.ASCIIDOC)
- .withOutputLanguage(Language.ZH)
- .withPathsGroupedBy(GroupBy.TAGS)
- .withGeneratedExamples()
- .withoutInlineSchema()
- .withBasePathPrefix()
- .build();
- Swagger2MarkupConverter converter = Swagger2MarkupConverter.from(remoteSwaggerFile)
- .withConfig(config)
- .build();
- converter.toFile(outputFile);
- }
- }
|