1.swagger是什么:
Swagger是一个规范和完整的框架,用于生成、描述、调用和可视化RESTful风格的Web服务。简单来说,Swagger是一个功能强大的接口管理工具,并且提供了多种编程语言的前后端分离解决方案。
- ·Swagger可以整合到代码中,在开发时通过注解,编写注释,自动生成API文档;
- ·方便前后端分离开发;
2.参数列表
code | reason |
---|---|
201 | 资源创建成功 |
204 | 成功处理请求 |
400 | 请求失败,具体返回业务状态码与对应消息 |
401 | 请求失败未经身份认可 |
405 | 请求方法不支持 |
500 | 无法处理的请求 |
2.1用户接口
接口:/goods/to_list
登录Resquest参数:
参数 | 类型 | 是否可为空 | 描述 |
---|---|---|---|
mobile | int | 否 | 手机号 |
password | String | 否 | 密码 |
verifyInput | String | 否 | 验证码 |
nickname | String | 是 | 用户昵称 |
lastLoginDate | date | 是 | 最后登录时间 |
registerDate | date | 是 | 注册时间 |
登录Response参数:
参数 | 类型 是否可为空 | 描述 |
---|---|---|
code | int | 否 |
msg | String | 否 |
data | boolean | 否 |
3.商品秒杀
接口:接口:/goods/to_detail/{goodsId}
商品request参数:
参数名 | 类型 | 是否可为空 | 描述 |
---|---|---|---|
goodsID | int | 否 | 商品ID |
商品Response参数
参数名 | 类型 | 是否为空 | 描述 |
---|---|---|---|
goodsname | String | 否 | 商品名称 |
goodsID | long | 否 | 商品ID |
goodsprice | double | 否 | 秒杀价格 |
miaoshatime | int | 否 | 秒杀倒计时 |
goodsImg | String | 否 | 商品照片 |
4.秒杀接口
接口:/miaosha/ do_miaosha
商品详情Request参数:
参数名 | 类型 | 是否可为空 | 描述 |
---|---|---|---|
goodsID | long | 否 | 商品ID |
Response参数:
参数名 | 类型 | 是否可为空 | 描述 |
---|---|---|---|
goodsname | String | 否 | 商品名称 |
goodsID | int | 否 | 商品ID |
goodsPrice | Double | 否 | 商品价格 |
orderDate | Date | 否 | 下单时间 |
orderStatus | Integer | 否 | 订单状态 |
5.搭建swagger
5.1加入依赖:
<!--swagger依赖-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.7.0<ersion>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.7.0<ersion>
</dependency>
5.2整合swagger:
5.2.1、首先创建SwaggerConfig类
5.2.2、在类中加入@EnableSwagger2注解
5.2.3、添加@bean注解,然后添加一个ApiInfo的配置,添加注解扫描,其实对于扫描这里,配置分类两类,一个是包的路径扫描,一个是按照注解的扫描
public class SwaggerConfig {
@Bean
public Docket productApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)) //添加ApiOperiation注解的被扫描
.paths(PathSelectors.any())
.build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder().title("swagger和springBoot整合").description("swagger的API文档")
.version("1.0").build();
}
}
5.3集成swagger:
5.3.1.在controller类前中加入注解
@Api(value = "用户业务接口",tags = {"用户相关业务的controller"})
5.3.2、访问本地链接http://localhost:8080/swagger-ui.html#/
5.3.3.给每个controller类里的接口起名字添加
@ApiOperation(value = “接口名称”)
点击网页中的controller即可发现每一个接口也都有了注释
5.3.4.定义接口传递的参数的名称
@ApiModel(value = "用户对象",description = "用户对象 ")
5.4开始测试每一个接口
填入对应的字段,即可