zoukankan      html  css  js  c++  java
  • swagger文档导出

    1. 导入依赖

            <dependency>
                <groupId>io.github.swagger2markup</groupId>
                <artifactId>swagger2markup</artifactId>
                <version>1.3.1</version>
            </dependency>
            <dependency>
                <groupId>ch.netzwerg</groupId>
                <artifactId>paleo-core</artifactId>
                <version>0.10.2</version>
            </dependency>
            <dependency>
                <groupId>io.vavr</groupId>
                <artifactId>vavr</artifactId>
                <version>0.9.2</version>
            </dependency>

    2. 导出代码

    package com.example.demo;
    
    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.junit.jupiter.api.Test;
    import org.springframework.boot.test.context.SpringBootTest;
    
    import java.net.URL;
    import java.nio.file.Paths;
    
    @SpringBootTest
    class DemoApplicationTests {
    
        private static final String url = "http://你的ip地址和端口号/v2/api-docs";
    
        /**
         * 生成AsciiDocs格式文档
         * @throws Exception
         */
        @Test
        public void generateAsciiDocs() throws Exception {
            //    输出Ascii格式
            Swagger2MarkupConfig config = new Swagger2MarkupConfigBuilder()
                    .withMarkupLanguage(MarkupLanguage.ASCIIDOC)
                    .withOutputLanguage(Language.ZH)
                    .withPathsGroupedBy(GroupBy.TAGS)
                    .withGeneratedExamples()
                    .withoutInlineSchema()
                    .build();
    
            Swagger2MarkupConverter.from(new URL(url))
                    .withConfig(config)
                    .build()
                    .toFolder(Paths.get("./docs/asciidoc/generated"));
        }
    
        /**
         * 生成Markdown格式文档
         * @throws Exception
         */
        @Test
        public void generateMarkdownDocs() throws Exception {
            //    输出Markdown格式
            Swagger2MarkupConfig config = new Swagger2MarkupConfigBuilder()
                    .withMarkupLanguage(MarkupLanguage.MARKDOWN)
                    .withOutputLanguage(Language.ZH)
                    .withPathsGroupedBy(GroupBy.TAGS)
                    .withGeneratedExamples()
                    .withoutInlineSchema()
                    .build();
    
            Swagger2MarkupConverter.from(new URL(url))
                    .withConfig(config)
                    .build()
                    .toFolder(Paths.get("./docs/markdown/generated"));
        }
    //  /**
    //   * 生成Confluence格式文档
    //   * @throws Exception
    //   */
    //  @Test
    //  public void generateConfluenceDocs() throws Exception {
    //      //    输出Confluence使用的格式
    //      Swagger2MarkupConfig config = new Swagger2MarkupConfigBuilder()
    //              .withMarkupLanguage(MarkupLanguage.CONFLUENCE_MARKUP)
    //              .withOutputLanguage(Language.ZH)
    //              .withPathsGroupedBy(GroupBy.TAGS)
    //              .withGeneratedExamples()
    //              .withoutInlineSchema()
    //              .build();
    //
    //      Swagger2MarkupConverter.from(new URL("http://localhost:8016/v2/api-docs"))
    //              .withConfig(config)
    //              .build()
    //              .toFolder(Paths.get("./docs/confluence/generated"));
    //  }
    
        /**
         * 生成AsciiDocs格式文档,并汇总成一个文件
         * @throws Exception
         */
        @Test
        public void generateAsciiDocsToFile() throws Exception {
            //    输出Ascii到单文件
            Swagger2MarkupConfig config = new Swagger2MarkupConfigBuilder()
                    .withMarkupLanguage(MarkupLanguage.ASCIIDOC)
                    .withOutputLanguage(Language.ZH)
                    .withPathsGroupedBy(GroupBy.TAGS)
                    .withGeneratedExamples()
                    .withoutInlineSchema()
                    .build();
    
            Swagger2MarkupConverter.from(new URL(url))
                    .withConfig(config)
                    .build()
                    .toFile(Paths.get("./docs/asciidoc/generated/all"));
        }
    
        /**
         * 生成Markdown格式文档,并汇总成一个文件
         * @throws Exception
         */
        @Test
        public void generateMarkdownDocsToFile() throws Exception {
            //    输出Markdown到单文件
            Swagger2MarkupConfig config = new Swagger2MarkupConfigBuilder()
                    .withMarkupLanguage(MarkupLanguage.MARKDOWN)
                    .withOutputLanguage(Language.ZH)
                    .withPathsGroupedBy(GroupBy.TAGS)
                    .withGeneratedExamples()
                    .withoutInlineSchema()
                    .build();
    
            Swagger2MarkupConverter.from(new URL(url))
                    .withConfig(config)
                    .build()
                    .toFile(Paths.get("./docs/markdown/generated/all"));
        }
    
    }
  • 相关阅读:
    最少乘法次数 http://acm.nyist.net/JudgeOnline/problem.php?pid=46
    取石子(一)http://acm.nyist.net/JudgeOnline/problem.php?pid=23
    数的长度http://acm.nyist.net/JudgeOnline/problem.php?pid=69
    Dinner http://acm.nyist.net/JudgeOnline/problem.php?pid=218
    FatMouse' Trade http://acm.hdu.edu.cn/showproblem.php?pid=1009
    Elevator http://acm.hdu.edu.cn/showproblem.php?pid=1008
    Number Sequence http://acm.hdu.edu.cn/showproblem.php?pid=1005
    阶乘之和http://acm.nyist.net/JudgeOnline/problem.php?pid=91
    对象模型学习总结 (二) . 关于继承和多态
    cubieboard 配置WIFI
  • 原文地址:https://www.cnblogs.com/knightdreams6/p/11770213.html
Copyright © 2011-2022 走看看