概述
一、Swagger(学习笔记 仅供参考)
1、学习目标
-
了解swagger的作用和概念
-
了解前后端分离
-
在SpringBoot中集成Swagger
-
Swagger简介
-
前后端分离
Vue+SpringBoot
- 后端:控制层、服务层、数据访问层
- 前端:前端控制层、视图层
- 伪造后端数据:json格式数据已经存在了,不需要后端,前端依旧能够跑起来
-
后端时代:前端只用管理静态页面:html==>后端。模板引擎JSP =>后端是主力
-
2、Swagger简介
-
号称世界上最流行的Api框架
-
RestFul Api文档在线自动生成工具=>Api文档与API定义同步更新
-
直接运行,可以在下测试API接口
-
支持多种语言
3、Swagger的使用
-
需要使用springbox包
- swagger2
- ui
-
SpringBoot集成swagger
-
新建一个SpringBoot项目(springboot的web项目就行)
-
导入相关的依赖
-
<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger-ui -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
-
编写一个hello工程
-
-
配置Swagger=>config
-
测试运行http://localhost:8080/swagger-ui.html
-
-
注意:刚开始第一次用的swagger依赖版本是3.0.0版本,没有运行出swagger页面,但是换成2.9.2版本就好了
4、配置Swagger=>Swagger的Bean实例Docket;
5、Swagger配置扫描接口和其他事务
//配置了swagger的bean实例
@Bean
public Docket docket(){
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.enable(false) //enable():是否启用swagger (ture/false)
.select()
//RequestHandlerSelectors, 配置要扫描接口的方式
//basePackage():指定要扫描的包
//any():扫描全部
//none():全部都不扫描
//withClassAnnotation():扫描类上的注解
//withMethodAnnotation():扫描方法上的注解
.apis(RequestHandlerSelectors.basePackage("com.kuang.controller"))
//过滤 /kuang/**:代表只扫描带有kuang路径下的请求 请求路径中没有kuang的都扫描不到
// .paths(PathSelectors.ant("/kuang/**"))
.build();
}
6、小问题
怎么才能让Swagger在生产环境中使用,在发布的时候不使用?
7、配置API文档的分组
.groupName("杨桀桀")
8、实体类配置
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-k0OpbdXr-1663293892672)(D:系统默认桌面springCloud.assets1663231090825.png)]
@ApiModel("用户实体类") 为类添加注释
@ApiModelProperty("用户名") 为属性添加注释
9、总结
1、我们可以通过Swagger给一些比较难理解的属性或者接口,增加注释信息
2、接口文档实时更新
3、可以在线测试接口请求,如果有错误可以及时沟通
注意:在正式发布的时候,关闭swagger,出于安全考虑,也节约内存.
最后
以上就是无辜煎蛋为你收集整理的Swagger笔记的全部内容,希望文章能够帮你解决Swagger笔记所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复