Swagger的Api使用规范

官网:https://swagger.io/

  • 上篇只是介绍了springboot如何继承swagger2,并没有详细的解释其api的使用,以下记录下使用规范

API使用:

swagger的api
作用范围API使用位置
协议集描述@Api用于controller类上
协议描述@ApiOperation用在controller的方法上
非对象参数集@ApiImplicitParams用在controller的方法上
非对象参数描述@ApiImplicitParam用在@ApiImplicitParams的方法里边
Response集@ApiResponses用在controller的方法上
Response@ApiResponse用在 @ApiResponses里边
描述返回对象的意义@ApiModel用在返回对象类上
对象属性@ApiModelProperty用在出入参数对象的字段上

@ApiImplicitParam() 内部参数: 

属性取值作用
paramType 查询参数类型
 path以地址的形式提交数据
 query直接跟参数完成自动映射赋值
 body以流的形式提交 仅支持POST
 header参数在request headers 里边提交
 form以form表单的形式提交 仅支持POST
dataType 参数的数据类型 只作为标志说明,并没有实际验证
 Long 
 String 
name 接收参数名
value 接收参数的意义描述
required 参数是否必填
 true必填
 false非必填
defaultValue 默认值
  •  多参数使用:@ApiImplicitParams({ @@ApiImplicitParam(),@ApiImplicitParam(),... })

给出几个使用示例 :

    @ApiOperation("添加广告")
    @ApiImplicitParams(@ApiImplicitParam(name = "haicheAd", value = "广告实体", required = true, paramType = "body", dataType = "HaicheAd"))
    @PostMapping(value = "/add")
    public void add(@RequestBody HaicheAd haicheAd) {
        //HaicheAd 对象实体
}

    @ApiOperation("查询广告列表页")
    @ApiImplicitParams({
            @ApiImplicitParam(name="index",value = "广告位置",paramType = "query",dataType = "String"),
            @ApiImplicitParam(name="name",value = "广告名称",paramType = "query",dataType = "String"),
            @ApiImplicitParam(name="del",value = "是否删除 1存在 0删除",paramType = "query",dataType = "int"),
            @ApiImplicitParam(name="page",value = "页码",paramType = "query",dataType = "Integer"),
            @ApiImplicitParam(name="pageSize",value = "页数",paramType = "query",dataType = "int")
    })
    @PostMapping(value = "/listBy")
    public JsonFormat listBy(
            @RequestParam(value = "index",required = false) String index,
            @RequestParam(value = "name",required = false) String name,
            @RequestParam(value = "del",required = false,defaultValue = "1") Integer del,
            @RequestParam(value = "page",defaultValue = "1") Integer page,
            @RequestParam(value = "pageSize",defaultValue = "10") Integer pageSize){

}
@ApiOperation("获取广告详情")
    @ApiImplicitParams(
            @ApiImplicitParam(name="id",value = "广告id",paramType = "path",required = true,dataType = "int"))
    @GetMapping(value = "adInfo/{id}")
    public JsonFormat getAdInfo(@PathVariable(value = "id") Integer id){
}

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值