简介
在一开始工作时每次创建项目配置Swagger都需要为Swagger搭建相应的配置类,配置Docket、ApiInfo、SecurityContexts等bean,当自己想要搭个小工程测试时也需要重新配置或拷贝过来,实属麻烦,于是便有了将Swagger与SpringBoot集成为自动化配置框架的想法了。该框架基于swagger2-2.9.2与SpringBoot-2.0.1版本进行搭建,兼容SpringBoot2.x以上版本,不兼容1.x版本。

快速开始
- 框架依赖

- application.yml配置

当swagger初始化完成后,控制台会打印出swagger具体url,使用者点击便可在默认浏览器中打开swagger页面。以上配置了一个Docket bean,且设置了ApiInfo,及全局token。
当使用token(如JWT)校验身份时,前端每次都需要传一个鉴权header给后台去校验token是否过期,如果没有token或token过期则自动调回登录页登录获取token。添加鉴权后后端测试时自然也需header传参,此时每次用swagger接口测试都要填一个header参数就显得十分麻烦了。通过配置security-contexts与security-schemas,可以让开发者只在security-schemas填一次header即可应用到所有接口。更多集成用法有兴趣的可在框架github文档查看。
为了让使用者更方便,主要配置项都添加了注释(文档完善与否是判断一个框架好坏的重大因素,希望读者注重文档的重大性-文档快捷键Ctrl+Q)。


设置上图apiKey后可以通过getHeader(“Authorization”)获取全局header进行鉴权了。
配置扩展
swagger.enabled: 禁用swagger(boolean,默认false)
swagger.profiles: 在特定环境下才启用swagger(字符串数组,默认空)
swagger.dockets: 配置多个docket,key为当前docket在Spring容器中的bean name,value配置同swagger.docket配置(对配置项Alt+Q可查看范例)
小知识
github开源框架可以通过https://github.com/{groupId最后一个”.”后的字符串}/{artifactId}查看.
如当前框架github页便是
https://github.com/wilson-he/swagger2-spring-boot-starter
阿里druid框架github页便是
https://github.com/alibaba/druid
收藏了,感谢分享