文章首发于个人博客站点:https://donlex.cn
相信使用前后端分离的工程师都对接口文档折磨过。无论是前端调用后端,还是后端调用后端,都期望有一个好的接口文档。而Swagger,我个人理解就是把相关的信息存储在它定义的描述文件里面(yml或json格式),再通过维护这个描述文件可以去更新接口文档,以及生成各端代码,它能够很好地化解前面所说的尴尬。
这样项目开始时期,只要前端跟后端定义好返回的数据格式,就可以根据接口文档进行统一的规范,这样数据规范起来之后,前端就不需要等到后端开发好接口才能知道具体的数据格式,前端使用mockjs模拟数据进行开发,大大节省了时间,同时也减少了不必要的沟通过程。
个人感觉原生的swagger-UI不太友好,所以在网上找到了swagger-bootstrap-ui,这是国人开发的ui包,感觉非常不错。
快速开始
引入maven包
由于是springfox-swagger的增强UI包,所以基础功能依然依赖Swagger,springfox-swagger的jar包必须引入
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
然后引入SwaggerBoo