博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【Java】Swagger2 结合spring boot 请求接口自动生成文档
阅读量:7243 次
发布时间:2019-06-29

本文共 3118 字,大约阅读时间需要 10 分钟。

官方地址:https://swagger.io/

功能主要有 1、提供后台访问地址,可对接口测试 2、生成各种离线文档 3、结合mock导入

swagger-ui

1、 maven依赖

io.springfox
springfox-swagger2
2.7.0
io.springfox
springfox-swagger-ui
2.7.0

2、配置类

import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;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;@Configuration@EnableSwagger2public class SwaggerConfig {        @Bean    public Docket api(){        return  new Docket(DocumentationType.SWAGGER_2).select()                // 接口包扫描,也可配置全项目扫描                .apis(RequestHandlerSelectors.basePackage("com.xxxxx"))                .paths(PathSelectors.any())                .build()                .apiInfo(apiInfo());    }    // API自定义描述信息    private ApiInfo apiInfo(){        return new ApiInfoBuilder()                .title("xxx Project APIs")                .description("xxxxxx 接口")                .termsOfServiceUrl("http:xxxxxx")                .version("1.0")                .build();    }}

3、访问路径

可在此路径下进行接口查看,测试

http://ip:port/swagger-ui.html

离线文档生成

以生成Markdown格式文档 为例

前提swagger-ui 的访问路径是开启的,可访问 http://ip:port/v2/api-docs 返回的是接口描述的json

1、maven 依赖

io.github.swagger2markup
swagger2markup
1.3.1
commons-beanutils
commons-beanutils
1.9.3

2、java 代码实现生成

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.Test;import java.net.URL;import java.nio.file.Paths;public class SwaggerCreateDocTest {    @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("http://localhost:9999/v2/api-docs"))                .withConfig(config)                .build()                .toFolder(Paths.get("C:\\Users\\wb-ndz525238\\Desktop"));    }}

转载于:https://www.cnblogs.com/jzsg/p/10881302.html

你可能感兴趣的文章
Sql2005+:sp_MS_marksystemobject 数据库DB执行上下文
查看>>
运行命令大全
查看>>
Google管理员工具最新更新:强化的站点错误报告
查看>>
【译】SQL Server索引进阶第十五篇:索引的最佳实践
查看>>
利用Middlegen Hibernate3生成hbm.xml配置和java类
查看>>
oracle----session
查看>>
C# UrlEncode(WinForm and WebForm)
查看>>
ASP.NET MVC Web API 学习笔记---联系人增删改查
查看>>
分享两个超棒的帮助你生成占位图片(placeholder image)的在线工具
查看>>
超棒的纯Javascript实现的文件上传功能 - Fine uploader
查看>>
[转载]Mvvm Light Toolkit for wpf/silverlight系列
查看>>
详解Objective-C消息传递机制
查看>>
sql树的反向查询如何实现
查看>>
Memcached数据被踢(evictions>0)现象分析
查看>>
windows和linux查找被入侵后留下的后门文件
查看>>
为什么要从Web form过渡到MVC中
查看>>
【Java学习笔记】实现Comparator接口来进行字符串逆向排序
查看>>
从Oho到Siri (语言心理学简介)
查看>>
黄聪:C#模拟网站页面POST数据提交表单(一)--WebClient (转)
查看>>
插件购票的公平性分析
查看>>