Swagger2 使用注解解析
这段时间项目要规范接口文档,最后决定用Swagger,虽然默认的ui很丑,不过国内的一个swagger-bootstrap-ui开源项目还是挺好的,使用的过程中一些注解的解释,记录一下
如果不想暴露有些敏感接口,可以添加@ApiIgnore注解屏蔽接口 @Api(value = "contentshare", tags = "controller层的注解,tabs的名称") @ApiOperation(value = "接口名称", notes = "接口注释") @PostMapping(consumes = "如果使用PostMapping,这个默认值为json类型(可能是我框架默认的,待测试)") @ApiParam("定义参数注释时,required = true非空属性不生效,改用了ApiImplicitParam") ---------------------------------------------------------------------------------------------- @ApiImplicitParams{ @ApiImplicitParam(name="a1",value="注释1",dataType="String", paramType = "query",example="xingguo"), @ApiImplicitParam((name="a2",value="注释2",dataType="类名", paramType = "query",example="xingguo")) } 参数解释: paramType:表示参数放在哪个地方 header-->请求参数的获取:@RequestHeader(代码中接收注解) query-->请求参数的获取:@RequestParam(代码中接收注解) path(用于restful接口)-->请求参数的获取:@PathVariable(代码中接收注解) body-->请求参数的获取:@RequestBody(代码中接收注解) form(不常用) example = "example:表示默认值,是Swagger生成Example Value时的默认值,方便Swagger测试使用,不是接口调用时的默认值。 dateType="String": 指定入参的数据类型,可以是泛型,基本类型,类名(如果用@RequertBody接受入参,如果有ApiImplicitParam注解,会导致ui上model中参数为空,不知道这是什么BUG,去掉就好了) ---------------------------------------------------------------------------------------------- @ApiModel(value = "model层的注解,解释类名称") @ApiModelProperty(value = "model属性的名称",required = true) //required = true 是否必填

浙公网安备 33010602011771号