@Api
@Api:用在请求的类上,表示对类的说明 tags="说明该类的作用,可以在UI界面上看到的注解" value="该参数没什么意义,在UI界面上也看到,所以不需要配置"
@ApiOperation
@ApiOperation:用在请求的方法上,说明方法的用途、作用 value="说明方法的用途、作用" notes="方法的备注说明"
@ApiImplicitParams
@ApiImplicitParams:用在请求的方法上,,表示一组参数说明,包含多个 @ApiImplicitParam, @ApiImplicitParam:用在@ApiImplicitParams注解中,指定一个请求参数的各个方面 参数: 1. name :参数名 2. value : 参数的具体含义、作用 3. required : 参数是否必填 4. dataType :参数的数据类型,默认String,其它值dataType="Integer"(实际是要:dataType = "int",swagger页面上展示的是integer) 5. paramType :查询参数类型(参数放在哪个地方),这里有几种形式: 类型 作用 path 以地址的形式提交数据(用于restful接口)--> 请求参数的获取:@PathVariable query 直接跟参数完成自动映射赋值--> 请求参数的获取:@RequestParam body 以流的形式提交 仅支持POST,不常用--> 请求参数的获取:@RequestBody(代码中接收注解) header 参数在request headers里边提交--> 请求参数的获取:@RequestHeader form 以form表单的形式提交 仅支持POST,不常用 6. defaultValue:参数的默认 7. example : 示例数据 在这里我被坑过一次:当我发POST请求的时候,当时接受的整个参数,不论我用body还是query,后台都会报Body Missing错误。这个参数和SpringMvc中的@RequestBody冲突,索性我就去掉了paramType,对接口测试并没有影响。 示例: @ApiOperation("查询测试") @GetMapping("select") //@ApiImplicitParam(name="name",value="用户名",dataType="String", paramType = "query") @ApiImplicitParams({ @ApiImplicitParam(name="name",value="用户名",dataType="string", paramType = "query",example="xingguo"), @ApiImplicitParam(name="id",value="用户id",dataType="long", paramType = "query")}) public void select(){ }
@ApiResponses
@ApiResponses:用在请求的方法上,表示一组响应 @ApiResponse:用在@ApiResponses中,一般用于表达一个错误的响应信息 code:数字,例如400 message:信息,例如"请求参数没填好" response:抛出异常的类
@ApiModel
@ApiModel:用于响应类上,表示一个返回响应数据的信息 (这种一般用在post创建的时候,使用@RequestBody这样的场景, 请求参数无法使用@ApiImplicitParam注解进行描述的时候)
@ApiModelProperty
@ApiModelProperty:用在属性上,描述响应类的属性
标签:ApiImplicitParam,请求,dataType,swagger2,参数,value,整理,注解,name From: https://www.cnblogs.com/uncleyong/p/16212311.html