Swagger实践和总结

Swagger学习和实践


最近安装并使用了一下Swagger-uiSwagger-editorSwagger-codegen,感觉还不错。

Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。Swagger的目标是对REST API定义一个标准的和语言无关的接口,可让人和计算机无需访问源码、文档或网络流量监测就可以发现和理解服务的能力。当通过Swagger进行正确定义,用户可以理解远程服务并使用最少实现逻辑与远程服务进行交互。与为底层编程所实现的接口类似,Swagger消除了调用服务时可能会有的猜测。

Swagger是一组开源项目,其中主要要项目如下:

  • Swagger-tools:提供各种与Swagger进行集成和交互的工具。例如模式检验、Swagger 1.2文档转换成Swagger 2.0文档等功能。
  • Swagger-core: 用于Java/Scala的的Swagger实现。与JAX-RS(Jersey、Resteasy、CXF...)、Servlets和Play框架进行集成。
  • Swagger-js: 用于JavaScript的Swagger实现。
  • Swagger-node-express: Swagger模块,用于node.js的Express web应用框架
  • Swagger-ui:一个无依赖的HTML、JS和CSS集合,可以为Swagger兼容API动态生成优雅文档。
    Swagger实践和总结
  • Swagger-codegen:一个模板驱动引擎,通过分析用户Swagger资源声明以各种语言生成客户端代码。
    C:\tools\swagger-codegen>mvn package
    C:\tools\swagger-codegen\modules\swagger-codegen-cli>mvn package
    C:\tools\swagger-codegen\modules\swagger-generator>mvn package
    C:\tools\swagger-codegen>java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar generate -i http://petstore.swagger.io/v2/swagger.json -l spring-mvc -o yqu/petstore/spring-mvc
    C:\tools\swagger-codegen\yqu\petstore\spring-mvc>mvn package
    
    上述操作通过底层使用SpringFox库,会创建带有Swagger注释的Spring MVC框架代码,包括Controller和DTO类。这样将Swagger-ui部署到Web应用内,就可以通过http://server:8002/v2/sdoc.jsp在线访问API文档了。
  • Swagger-editor:可让使用者在浏览器里以YAML格式编辑Swagger API规范并实时预览文档。可以生成有效的Swagger JSON描述,并用于所有Swagger工具(代码生成、文档等等)中。
    Swagger实践和总结

除了Swagger项目自身支持的Java、Scala和JavaScript语言,Swagger社区中还提供了很多支持其他语言的第三方工具,覆盖了Clojure、ColdFusion / CFML、Eiffel、Go、Groovy、.Net、Perl、PHP、Python、Ruby等各种编程语言。


Swagger总结


Swagger这类API文档工具可以满足下列需求:
  • 支持API自动生成同步的在线文档
    • 这些文档可用于项目内部API审核
    • 方便测试人员了解API
    • 这些文档可作为客户产品文档的一部分进行发布
  • 支持API规范生成代码,生成的客户端和服务器端骨架代码可以加速开发和测试速度

跟下列其他API文档工具相比,Swagger各有优缺点,但它功能最多、也是最流行的。

参考


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Swagger是一款用于构建、文档化和测试API的开源框架。它提供了一组工具和约定,可以轻松地生成API文档,并通过交互式UI提供对API的可视化展示和测试。在Spring Boot项目中,可以使用Swagger来整合和管理API文档。 对于Spring Boot整合Swagger的具体步骤,可以根据使用的Swagger版本有所不同。下面我将分别介绍Swagger2和Swagger3的整合步骤。 1. Swagger2与Spring Boot整合的步骤: - 在项目的pom.xml文件中添加Swagger2的Maven依赖。 - 创建一个配置类Swagger2Config.java,用于配置Swagger2的相关参数和扫描的API接口。 - 编写API接口,并使用Swagger2的注解来定义接口的文档信息。 - 启动Spring Boot应用,访问Swagger页面即可查看生成的API文档。 2. Swagger3与Spring Boot整合的步骤: - 在项目的pom.xml文件中添加Swagger3的Maven依赖。 - 在启动类上添加@EnableOpenApi注解,开启Swagger3的自动配置。 - 创建一个配置类Swagger3Config.java,用于配置Swagger3的相关参数和扫描的API接口。 - 编写API接口,并使用Swagger3的注解来定义接口的文档信息。 - 启动Spring Boot应用,访问Swagger页面即可查看生成的API文档。 需要注意的是,具体的Maven依赖和配置类的代码可能会因为使用的Swagger版本不同而有所变化。因此,在实际操作中,可以根据项目的需求和使用的Swagger版本来进行相应的调整和配置。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [springboot整合Swagger](https://blog.csdn.net/qq_34972876/article/details/117693710)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [SpringBoot整合Swagger2实例方法](https://download.csdn.net/download/weixin_38651661/12748551)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值