mem*_*und 10 java swagger swagger-ui swagger-2.0
以下注释都适用于向swagger-ui文档添加元数据.应该首选哪一个,为什么?
public class MyReq {
@ApiModelProperty(required = true, value = "the persons name")
@ApiParam(required = true, value = "the persons name")
private String name;
}
@RestController
public class MyServlet {
@RequestMapping("/")
public void test(MyReq req) {
}
}
Run Code Online (Sandbox Code Playgroud)
sla*_*lal 15
两者之间存在巨大差异.它们都用于向swagger添加元数据,但它们添加了不同的元数据.
@ApiParam 是参数.它通常在API资源请求类中定义.
@ApiParam的示例:
/users?age=50
Run Code Online (Sandbox Code Playgroud)
它可用于定义参数年龄和以下字段:
@ApiModelProperty 用于添加模型的属性.您将在模型属性的模型类中使用它.
例:
model用户具有名称和年龄作为属性:名称和年龄,然后您可以为每个属性定义以下内容:
适合年龄:
查看每个在swagger对象中表示的字段:
@ ApiModelProperty- https://github.com/OAI/OpenAPI-Specification/blob/master/versions/1.2.md#529-property-object
@ApiParam - https://github.com/OAI/OpenAPI-Specification/blob/master/versions/1.2.md#524-parameter-object