目的:
在写这篇记录时,swagger的最新版本到了3.0.0了,在进行集成时,没注意,还按照2.0的集成,走了一些弯路,这里特记录下。
环境:
一个已经搭建好的干净的springboot框架,这个框架中我集成了mybatis.
什么是swagger?
Swagger是一款RESTful接口的文档在线自动生成、功能测试功能框架。
一个规范和完整的框架,用于生成、描述、调用和可视化RESTful风格的Web服务,加上swagger-ui,可以有很好的呈现。
当我们在后台的接口修改了后,swagger可以实现自动的更新,而不需要人为的维护这个接口进行测试。
说的再简单点,传统的我们开发好接口后,都会通过单元测试或者如PostMan之类的测试工具进行接口的测试,在接口少的时候这个还行,可是现在大家都倡导前后端分离式的开发
导致后端全是接口,随着业务的复杂,一个项目路的 接口不要太多,每个接口我们都要去写文档,而且在过程中随着业务的编写接口还会不停的更新,这样我们的测试工具就显得力不从心了,而且大家也知道,很多公司的文档都是后补的,各种各样的原因导致可能文档中的接口与实际的接口差别还挺大。。。。。
那么这个时候,我们通过swagger的引入,在写接口的同时,通过注解的方式在接口上写明接口的作用,参数介绍等,那么会在线生成一个接口 文档,而且还可以直接进行测试,还是随着实际的接口变动实时更新的,这个是不是挺美的。这就是swagger
但是swagger是侵入式的,说白了,你要用它,就得在每个对应的接口的地方都要写点注解,虽然少,但还是有,这就侵入了我们现有的代码,这点目前看来不是很友好。
springBoot集成swagger
第一步:引入maven依赖,在你项目的pom文件中,引入下面依赖:
<!--配置swagger3-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</de