swagger,有很多特别好用的注解,可以给咱们的swagger文档去补充说明,下面是swagger的一些常用注解。
第一个是@Api,作用于类上面,用户说明这个类的信息
@Api(tags="swagger的api")
效果:
--------------------------------------------------------------------------------------
紧接着咱们要对方法进行一个说明,用的注解是@ApiOperation
@ApiOperation(value = "测试swagger信息")
效果:
----------------------------------------------------------------------------------------
对状态码的一个说明:
@ApiResponses({
@ApiResponse(code = 200,message = "请求成功"),
@ApiResponse(code = 500,message = "后端代码报错了"),
@ApiResponse(code = 400,message = "请求参数异常"),
@ApiResponse(code = 401,message = "没有权限")
})
具体用法:
效果:
----------------------------------------------------------------------------------------
如果有参数,对参数进行说明:
@ApiParam("测试String")
运行效果:
最后是对响应参数作一个说明
分别有两个注解:
@ApiModel作用于类上,对这个类作解释说明
@ApiModelPropertie 作用于属性上,对这个类里的某个属性作解释说明
统一返回类,ResponseEntity
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author shenwang
* @version 1.0
* @date 2021/8/23 10:21
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@ApiModel("统一返回类")
public class ResponseEntity implements Serializable {
/**
* 结果 成功true 失败false
*/
@ApiModelProperty(value = "flag 结果,成功返回true,失败返回false")
private boolean flag;
/**
* 提示信息
*/
@ApiModelProperty(value = "提示信息")
private String message;
/**
* 所携带的数据
*/
@ApiModelProperty(value = "所携带的数据")
private Object data;
/**
* 状态码
*/
@ApiModelProperty(value = "状态码")
private Integer code;
public ResponseEntity(String message) {
this.message = message;
}
public ResponseEntity(String message, Integer code){
this.message=message;
this.code=code;
}
public ResponseEntity(boolean flag, String message, Object data){
this.message=message;
this.flag=flag;
this.data=data;
}
public ResponseEntity(boolean flag, String message, Integer code){
this.message=message;
this.flag=flag;
this.code=code;
}
}
效果: