Swagger官网:swagger.io
Springboot整合Swagger 原先用的2.7报错,自己这里降成2.4.5
引入spring web
引入Swagger2和SwaggerUI依赖
org.springframework.boot spring-boot-starter-testtest io.springfox springfox-boot-starter3.0.0 io.springfox springfox-swagger23.0.0 io.springfox springfox-swagger-ui3.0.0
配置下
注意将SpringBoot版本降低 原先用的2.7报错,自己这里降成2.4.5
@EnableSwagger2或者@EnableOpenApi 都可以开启swagger 或许里面有很多故事
启动访问、
http://localhost:8080/swagger-ui/index.html
大致分为4个信息区域
分别是:
1.Swagger信息
2.接口信息
3.实体类信息
4.组
配置扫描接口
配置是否启动Swagger
这些都是链式编程,因此无论去点什么方法,没有什么先后顺序
eable()是否启动
启动访问、
http://localhost:8080/swagger-ui/index.html
如果要让Swagger在dev或者test环境下启动,pro环境下不启动
那么启动
注意访问时候这里pro配置的是8090端口
所以访问
http://localhost:8090/swagger-ui/index.html#/
配置Swagger分组
为什么需要分组,如何配置多个组
配置多个Docket即可
A B C 默认是扫描所有接口,也可以指定 A组apiInfo是默认信息
hrui组是自定义配置的
就是为了协同开发,哪些是A写的 哪些B写的 或者说分职责开发
关于Swagger注释
写个pojo 如何让Swagger识别
直接启动 Swagger是扫描不到的
这样Swagger就可以扫描到
不需要去访问这个接口,只要返回值里包含此类
在实体类上的Swagger注释@ApiModel 或者@Api 属性加@ApiModelProperty
没出来就没出来,这玩意就这样吧 是没有写get set方法
接口上的Swagger注释
Swagger测试相关
就是模仿Postman在线测试
Swagger的用处:在线文档实时更新,难理解的属性接口增加注释,在线测试
注意:正式发布 一定关闭Swagger 不然接口全暴露