SpringBoot集成Swagger3的实现
一,什么是swagger?
1, swagger 是一个规范和完整的文档框架,
用于生成、描述、调用和可视化 restful 风格的 web 服务文档
官方网站:https://swagger.io/
2,使用swagger要注意的地方:
在生产环境中必须关闭swagger,
它本身只用于前后端工程师之间的沟通,
可以专门使用一台内部服务器来展示ui供访问,
即使在这上面要做好安全措施
3, 因为swagger3.0.0已发布,本文使用了最新版
如果有还在用2.x版本的请参考时注意区分
二,springboot 集成swagger3
pom.xml 集成swagger3依赖
<!-- swagger3 接口文档生成器 --> <dependency> <groupid>io.springfox</groupid> <artifactid>springfox-boot-starter</artifactid> <version>3.0.0</version> <exclusions> <exclusion> <groupid>org.springframework.plugin</groupid> <artifactid>spring-plugin-core</artifactid> </exclusion> <exclusion> <groupid>org.springframework.plugin</groupid> <artifactid>spring-plugin-metadata</artifactid> </exclusion> </exclusions> </dependency>
swagger3 配置对象定义
import org.springframework.context.annotation.bean; import org.springframework.context.annotation.configuration; import springfox.documentation.builders.apiinfobuilder; import springfox.documentation.builders.pathselectors; import springfox.documentation.builders.requesthandlerselectors; import springfox.documentation.oas.annotations.enableopenapi; import springfox.documentation.service.apiinfo; import springfox.documentation.service.contact; import springfox.documentation.spi.documentationtype; import springfox.documentation.spring.web.plugins.docket; @configuration @enableopenapi public class swagger3config { @bean public docket createrestapi() { return new docket(documentationtype.oas_30) .apiinfo(apiinfo()) .select() .apis(requesthandlerselectors.basepackage("com.digipower.controller")) .paths(pathselectors.any()) .build(); } private apiinfo apiinfo() { return new apiinfobuilder().title("在奋斗的大道上 - 微信预约查档系统").termsofserviceurl("https://blog.csdn.net/zhouzhiwengang") .description("api接口") .contact(new contact("https://blog.csdn.net/zhouzhiwengang","","")) .version("3.0").build(); } }
springboot 集成swagger3 接口文档效果截图
springboot 访问swagger3接口文档地址
默认接口访问地址:http://192.168.0.1:5988/swagger-ui/
三,swagger3 注解标签使用
@apimodel用于类上面说明功能
@apimodelproperty用于字段上说明功能
示列截图:
@api用来指定一个controller中的各个接口的通用说明
@apioperation用来说明一个方法
@apiimplicitparams:用来包含多个包含多个 @apiimplicitparam
@apiimplicitparam:用来说明一个请求参数
示列截图:
温馨提示:针对任何请求参数结构说明,请一定记得要添加@apiparam 标签,如果不添加@apiparam标签,在swagger3文档中针对参数结构说明就是空
到此这篇关于springboot集成swagger3的实现的文章就介绍到这了,更多相关springboot集成swagger3内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
下一篇: 详解TensorFlow训练网络两种方式