前言
目前互联网时代前后端分离已成趋势,前后端混在一起,前端或者后端无法做到“及时协商,尽早解决”,最终导致问题集中爆发。解决方案就是前后端通过API进行交互达到相对独立且松耦合。就是这样的一个API框架,支持多种语言 如:,等,它号称是世界上最流行的API框架!
2、
版本问题,SpringBoot的版本很多,被集成的框架版本也很多,可能版本高一点或者低一点就可能出现各种bug,这是集成其他框架的通病,这里得注意一下。如果运行出现一些什么bug,如果对SpringBoot底层原理不是很了解的可以先百度谷歌一下,找不到建议不妨换个SpringBoot的版本!
注意:jdk 1.8以上才能运行swagger2
3、
这个时候已经算是初步整合完毕了,启动项目可访问 可以看到swagger的界面,如下;

不管是Spring Boot整合还是SpringMVC整合Swagger都基本类似,重点就在于配置Swagger,它的精髓所在就在于配置,这很关键。我们从下图来全局看看Swagger的四部分重点布局:

Swagger实例Bean是Docket,所以必须通过配置Docket实例来配置Swaggger。
第一部分--API分组:如果没有配置分组默认是default。通过Swagger实例Docket的方法即可配置分组
第二部分--基本描述:可以通过Swagger实例Docket的方法中的ApiInfo实例参数配置文档信息
第三部分--请求接口列表:在组范围内,只要被Swagger2扫描匹配到的请求都会在这里出现。
第四部分--实体列表:只要实体在请求接口的返回值上(即使是泛型),都能映射到实体项中!
第四部分注意:并不是因为@ApiModel注解让实体显示在Models列表里,而是只要出现在接口方法的返回值上的实体都会显示在这里,而@ApiModel和@ApiModelProperty这两个注解只是为实体添加注释的。前者为类添加注释,后者为类属性添加注释。
先从第二部分开始分析,这样分析对理解第一部分比较有帮助。
1、分析

2、RequestHandlerSelectors过滤
点进RequestHandlerSelectors源码,分析如下:

实际上,上面的内容就是一个完整的API组
讲第三部分和第四部分前,非常有必要先了解swagger2的常用注解,用注解的话,可以给一些比较难理解的属性或者接口,增加一些配置信息,让人更容易阅读!这点也是swagger2的重中之重!
首先我们得知道一点Swagger的所有注解定义在包下。,这里只列出一些常用的注解,如下:

如果要详细了解这些注解可以参考swagger2 注解说明
请求接口列表:在组范围内,只要被Swagger2扫描匹配到的请求都会在这里出现。使用注解能更好的提高阅读性。

之前说过,只要实体在请求接口的返回值上(即使是泛型),都能映射到实体项中!是的,因此我们第一步是先有实体类。
当然注解里有很多属性,也会有许多坑,这里注意一下,本篇文章暂不概述。
效果如下:

本篇文章非常浅显,若有不正之处,欢迎批评指正,感激不尽!
欢迎各位关注我的公众号,里面有一些java学习资料和一大波java电子书籍,比如说周志明老师的深入java虚拟机、java编程思想、核心技术卷、大话设计模式、java并发编程实战.....都是java的圣经,不说了快上Tomcat车,咋们走!最主要的是一起探讨技术,向往技术,追求技术,说好了来了就是盆友喔...

参考:https://mp.weixin..com/s/0-c0MAgtyOeKx6qzmdUG0w
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.mushiming.com/mjsbk/1816.html