今天研究了挺久swagger,以下有参考的博客,也有说一些今天遇到整合不了的问题,解决方法!
使用swagger2和ui直接依赖整合可参考:
https://my.oschina.net/wangnian/blog/666017
可以将其抽出来创建一个config包,创建类然后注入@Bean照样复制过去就可以,加上@Configuration,而开启Swagger的注解类最好保留在主类,springboot会自动扫描到这个类,同时注意依赖的版本要在3以下,这样就可以修改文档相关的信息。
https://www.cnblogs.com/jtlgb/p/8532433.html
而本文章的apiInfo()的私有方法,其实有两种创建方式里面都有了,一种也是构建者模式创建,有一个是走的全参数有参构造的方式 ,上面的使用全参数。用这个方法,注意apiInfo()方法别改名字,如果改了名字要注意写的.build()方法和apiInfo()顺序,最好别动人家的,就构造一个Docket就好,你两个都构造,容易玩脱了。
https://www.cnblogs.com/jtlgb/p/8532433.html
注意要点,这个其实采用的构建者模式创建的swagger,如果出现编译问题,检查.build()方法和apiInfo()方法顺序,构建apiInfo()方法有没有出现循环调用。
以上方法其实都是可以正常@Bean注入的。
而以下
使用springfox整合
http://blog.didispace.com/spring-boot-learning-21-2-7/
注意使用这个整合springboot使用版本不能太低,最好2.2以上,这个用法其实和swagger2和ui用法一样,只是开启注解变了,使用的@EnableOpenApi,其他配置还是可以用的,特别是上述参考没有演示自定义文档内容,这个可以参考上一部分创建配置类方法。但是api地址和上面有所变化,访问这一个,细心看就发现目录多了一级:
http://localhost:8080/swagger-ui/index.html/
没有加载到接口出来,注意看是不是自己设置了扫描包,但是自己创建的不是那一个扫描包,就不演示了。其实不难,最重要是动手。
如果像实现按照环境加载的文档页面的话,可以使用注解配置环境,以下网址也有解决方案啊,可参考:
https://www.bilibili.com/video/av75233634?p=49
再分享一个使用yml配置的
https://blog.csdn.net/z28126308/article/details/84187221
使用yaml配置注意点就注意如果混用java配置类,有可能出现失效的问题。
好啦基本上摸索出现的问题和解决方法都在这了,如果有空的时候,可能会进一步整理,就将就着看吧。动手了,思考了的你一定能解决自己遇见的问题。