作用在类上,用来标注该类具体实现内容。表示标识这个类是swagger的资源
作用在方法上,表示单独的请求参数
用于方法,包含多个 例:
@ApiImplicitParam
@ApiImplicitParams({
@ApiImplicitParam(name = "id",
value = "book‘s name",
required = true,
dataType = "Long",
paramType = "query"),
@ApiImplicitParam(name = "date",
value = "book‘s date",
required = false,
dataType = "string",
paramType = "query")})
用于类,表示对类进行说明,用于参数用实体类接收
用于方法,字段 ,表示对model属性的说明或者数据操作更改 例:
@ApiModel(
value = "User", description = "用户")
public class User implements Serializable{
private static final long serialVersionUID = 1546481732633762837L;
/**
* 用户ID
*/
@ApiModelProperty(value = "用户ID", required = true)
@NotEmpty(message = "{id.empty}", groups = {Default.class,New.class,Update.class})
protected String id;
/**
* code/登录帐号
*/
@ApiModelProperty(value = "code/登录帐号")
@NotEmpty(message = "{itcode.empty}", groups = {Default.class,New.class,Update.class})
protected String itcode;
/**
* 用户姓名
*/
@ApiModelProperty(value = "用户姓名")
@NotEmpty(message = "{name.empty}", groups = {Default.class,New.class,Update.class})
protected String name;
用于方法,表示一个http请求的操作 。
@ApiOperation(value = "获取图书信息",
notes = "获取图书信息",
response = Book.class,
responseContainer = "Item",
produces = "application/json")
@ApiImplicitParams({
@ApiImplicitParam(
name = "id",
value = "book‘s name",
required = true,
dataType = "Long",
paramType = "query"),
@ApiImplicitParam(
name = "date",
value = "book‘s date",
required = false,
dataType = "string",
paramType = "query")})
@RequestMapping(
value = "/{id}",
method = RequestMethod.GET)
@ResponseBody
public Book getBook(@PathVariable Long id, String date) {
return books.get(id);
}
用于方法,描述操作的可能响应。
用于方法,一个允许多个ApiResponse对象列表的包装器。 例:
@ApiResponses(value = { @ApiResponse(code = 500, message = "2001:因输入数据问题导致的报错"),
@ApiResponse(code = 500, message = "403:没有权限"),
@ApiResponse(code = 500, message = "2500:通用报错(包括数据、逻辑、外键关联等,不区分错误类型)")})
用于方法,参数,字段说明,表示对参数的添加元数据(说明或是否必填等)
声明要在资源或操作上使用的授权方案。
介绍一个OAuth2授权范围。
响应头设置,使用方法。
本文分享自微信公众号 - 国产程序员(Monday_lida)
原文:https://www.cnblogs.com/fulong133/p/12421079.html