<svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path> </svg>
讯享网
1、为前端提供接口数据。在前后端分类的项目中,前后端数据同步问题一直是一个头疼的问题,导致前后端人员经常意见不合,撕b甚至大打出手
提供接口数据
2、实时更新文档。在我们增加一个字段或者改变某些信息的时候总是没有实时更新文档的习惯,导致后期维护造成很大的困扰,占用不必要的工作时间。

可以清楚看到各个接口及意义,后端改,实时同步
3、可以在线测试。这个功能相当于postman,可以自己模拟参数,然后测试。
输入具体的参数后,点击运行测试

Swagger2的出现就是为了从根本上解决上述问题。它作为一个规范和完整的框架,可以用于生成、描述、调用和可视化 RESTful 风格的 Web 服务
其实很简单,引入一个pom依赖,写一个配置类就可以使用了。下面为我实操过程中的笔记
1、首先创建一个spring boot项目

这个就不详细展开了,IDEA有专门的模板,maven目录结构就可以
2、引入pom依赖
讯享网
3、编写配置为swagger2,使用注解@EnableSwagger2
4、访问地址
http://localhost:9000/swagger-ui.htmllocalhost:9000
页面就出来了, 看似没有配置,实际使用的为默认配置

接下来就可以进行自定义配置了,也就是自我探索阶段。
可以先验证下注释怎么生成的
首先新建一个pojo类,我用的User类
讯享网
因为它默认扫描为全部的包,重启启动后可以看见如图


这里面的注解都是@APIxxx,感兴趣的可以一一测试
@Api:修饰整个类,描述Controller的作用
@ApiOperation:描述一个类的一个方法,或者说一个接口
@ApiParam:单个参数描述
@ApiModel:用对象来接收参数
@ApiProperty:用对象接收参数时,描述对象的一个字段
@ApiResponse:HTTP响应其中1个描述
@ApiResponses:HTTP响应整体描述
@ApiIgnore:使用该注解忽略这个API
@ApiError :发生错误返回的信息
@ApiImplicitParam:描述一个请求参数,可以配置参数的中文含义,还可以给参数设置默认值
@ApiImplicitParams:描述由多个 @ApiImplicitParam 注解的参数组成的请求参数列表
下面说一下,配置类中如何进行自定义配置

其中的apiInfo这个方法改变的是这块内容
需要写Docket这个方法来实现自定义配置,我只是使用了一部分配置,可以自行探索,主要应该学会举一反三,到具体项目中在变动
总结:swagger2就相当于一个实时同步文档,给前端提供接口的插件。将平常写注释前面加个注解就可以了,非常的方便,但是生产环境为了安全和运行效率,需要关闭
思考一个问题,我们该如何让他在生产环境中关闭,在开发或者其他环境中中开启?
1、定义环境,在配置文件中。以application.properties为例
讯享网
2、获取到当前环境
3、用当前获取的环境判断有没有
讯享网
4、传入enable方法中

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/148575.html