五、Swaggger注解
1、@Api
标识一个模块的描述,一般用于restful接口的类注解
常用属性:
1)value:用于接口模块的标题描述,似乎1.5版本后不可用
2)tags:用于接口模块的标题描述
3)description:描述接口类的详细信息,副标题,虽然起作用,但是后面可能会被废弃
4)produces:接口能够返回的资源类型,以逗号分隔,如:"application/json, application/xml"
5)consumes:接口能够接受的资源类型,以逗号分隔,如:"application/json, application/xml"
6)protocols:接口支持的传输协议,以逗号分隔,可能的值:http, https, ws, wss
7)hidden:在文档中是否隐藏,默认false;其实使用注解@ApiIgnore更为方便。
2、ApiOperation
描述具体api操作的注解
常用属性:
1)value:api操作的概要
2)notes:api操作的赘述
3)tags:1.5.2版本开始的api文档版本控制的标签列表
4)response:操作的相应类型,缺省Void.class
5)responseContainer:描述相应的容器,有效值:"List", "Set" 或"Map";其他值被忽略
6)responseReference:相应引用,相应可能是本地或远程引用
7)httpMethod:"GET", "HEAD", "POST", "PUT", "DELETE", "OPTIONS" and "PATCH"
3、@ApiModel
定义接口中使用的模型数据
1)value:模型的名字
2)description:详细的描述
3)parent:是否存在父类,默认Void.class
4)subTypes:是否有继承该类型的子类
5)reference:引用的相关类
4、@ApiModelProperty
描述数据模型的属性注解
1)value:模型属性的含义
2)allowableValues:允许的值,例如:range[1, 5]
3)dataType:数据类型
4)required:是否必须有值,默认false
5)example:属性值的举例
6)readOnly:只读属性
7)reference:该属性是否引用其他类
8)allowEmptyValue:是否允许空值,默认false