Swagger2边写代码边写文档

简介: 作为一个开发人员最怕的就是写文档了,但是要想成为一个合格的程序员,写好文档也是一个必备的技能。开发中我们经常要写接口服务,既然是服务就要跟别人对接,那难免要写接口文档,那么如何”优雅“的写接口文档呢?本文介绍一个在写代码的过程就可以写完接口文档的工具——Swagger2(江湖人称丝袜哥😂)

下文基于 SpringBoot + Maven 介绍 Swagger2 的使用

加入依赖

1.png

编写Swagger全局配置

2.png3.png4.png

Controller 编写

类上面增加@Api注解


5.png

方法上增加@ApiOperation注解

6.png

方法参数 Model 属性自定义设置

7.png8.png

@ApiModel注解用在 model 类上 @ApiModelProperty 用于 model 的属性上

可以定义是否 required, example, hidden, value, name等参数hidden 为 true 在页面上就不会显示在字段

界面使用

启动项目,打开项目文档地址:http://ip:port/swagger-ui.html[1

9.jpg


如图显示的内容。还可以添加 header 参数,以及在网页上进行测试10.jpg

增加密码

接口文档我们往往需要让有权限的人查看,所以我们可以根据 Spring-Security增加账号密码管理。增加依赖


11.png


配置文件中增加账号密码配置12.png增加了依赖和账号密码后重启项目,再次打开文档地址就要去输入账号和密码输入对应的账号和密码就可以登录了。

小坑

如果在启动的时候出现如下错误,是因为新版的 Swagger2需要高版本的 guava


13.png

解决方案增加如下配置即可

14.png

Security 过滤特定路径

针对非文档路径的其他路径,我们需要进行过滤,采用如下方式。

15.png

}

小结

Swagger2 让开发人员在编写代码的时候就完成了接口文档,方便快捷。而且随项目一起部署,不用担心丢失,需要的时候只要打开项目地址就可以了,十分方便。

在使用 Swagger2写完接口文档后,还可以直接导出 JSON 文件,访问路径`http://ip:port/v2/api-docs`可以看到JSON 文档。生成的 JSON 文档可以配合 YAPI 或者 POSTMAN 使用都是可以的


相关文章
|
7月前
|
Oracle 关系型数据库 Java
程序员必备推荐一款与Swagger媲美的数据库文档生成工具
程序员必备推荐一款与Swagger媲美的数据库文档生成工具
78 0
|
7月前
|
数据可视化 Linux API
如何在Linux使用docker部署Swagger Editor并实现无公网IP远程协同编辑API文档
如何在Linux使用docker部署Swagger Editor并实现无公网IP远程协同编辑API文档
|
7月前
|
数据可视化 Linux API
使用Docker安装部署Swagger Editor并远程访问编辑API文档
使用Docker安装部署Swagger Editor并远程访问编辑API文档
131 0
|
5月前
|
Java API 开发者
在Spring Boot中集成Swagger API文档
在Spring Boot中集成Swagger API文档
|
2月前
|
安全 Java API
SpringSecurity结合knife4j实现swagger文档
通过将Spring Security与Knife4j相结合,我们不仅能够为RESTful API提供强大的安全防护,还能保证API文档的易用性和可访问性,这对于API的设计、开发和维护来说至关重要。这种集成方式不仅提升了开发效率,也优化了API使用者的体验,是现代API驱动开发中不可或缺的一环。
87 0
|
4月前
|
JSON 测试技术 API
Python开发解析Swagger文档小工具
文章介绍了如何使用Python开发一个解析Swagger文档的小工具,该工具可以生成符合httprunner测试框架的json/yaml测试用例,同时还能输出Excel文件,以方便测试人员根据不同需求使用。文章提供了详细的开发步骤、环境配置和使用示例,并鼓励读者为该开源项目贡献代码和建议。
89 1
Python开发解析Swagger文档小工具
|
5月前
|
安全 Java API
Nest.js 实战 (三):使用 Swagger 优雅地生成 API 文档
这篇文章介绍了Swagger,它是一组开源工具,围绕OpenAPI规范帮助设计、构建、记录和使用RESTAPI。文章主要讨论了Swagger的主要工具,包括SwaggerEditor、SwaggerUI、SwaggerCodegen等。然后介绍了如何在Nest框架中集成Swagger,展示了安装依赖、定义DTO和控制器等步骤,以及如何使用Swagger装饰器。文章最后总结说,集成Swagger文档可以自动生成和维护API文档,规范API标准化和一致性,但会增加开发者工作量,需要保持注释和装饰器的准确性。
139 0
Nest.js 实战 (三):使用 Swagger 优雅地生成 API 文档
|
6月前
|
Java API Spring
Spring Boot中配置Swagger用于API文档
Spring Boot中配置Swagger用于API文档
|
7月前
|
Dubbo Java 测试技术
提升API文档品质:Swagger annotations (注解)使用教程
Swagger 提供的注解集是其框架中定义 API 规范和文档的重要工具。这些注解在代码里标注重要部分,为 Swagger 的解析工作铺路,进而生成详尽的 API 文档。开发者编写的注释能够被转换成直观的文档,并展现API端点、参数和响应等信息。这不仅提升了开发人员对 API 运作的理解与沟通,也使得测试和集成过程更加顺畅。
|
6月前
|
XML 前端开发 Java
Spring3 MVC中使用Swagger生成API文档
Spring3 MVC中使用Swagger生成API文档
49 0