swagger-ui-layer,基于layui 开源的swagger-ui的替换。界面大气,使用起来也很方便。swagger-ui-layer 依于swagger的功能,所以在原先项目中导入以下依赖即可
注意:
使用规则:
一、在返回对象类上中要使用注解@ApiModel(value="实体类对象", description="实体类描述"),对象字段上使用@ApiModelProperty(value=”字段说明“,required=”是否必填”)表示对model属性的说明
注意:@ApiModel value 不能同名,否则会导致参数乱窜.
二、@API使用在Controller类上,表明是swagger资源
@Api(value = "仓库管理controller", tags = {"仓库管理接口"})
三、在每个接口方法中使用注解@ApiOperation(value = “接口说明”, httpMethod = “接口请求方式”, response = “接口返回参数类型”, notes = “接口发布说明”);表示一个http请求的 *** 作
四、 @RequestBody和@ApiImplicitParam不能共用
@RequestBody主要用来接收前端传递给后端的json字符串中的数据的,如果想要swagger显示出实体类的参数描述信息要在实体类上使用@ApiModel(value="")
原先:在接口方法中会使用@ApiImplicitParam(name = "vo", value = "用户实体类", paramType = "body", required = true, dataType = "UserVo") 但@RequestBody和@ApiImplicitParam注解,会使实体类参数描述信息显示不出来,所以@ApiImplicitParam适用于没有接收实体类参数的方法
五、 @ApiParam 用于 Controller 中方法的参数说明。如图所示。
六、如果接口中,实体参数的描述没有显示出来可以加上@ModelAttribute 注解
七、通过 @PathVariable 可以将 URL 中占位符参数绑定到控制器处理方法的入参中:URL 中的 {xxx} 占位符可以通过@PathVariable(“xxx“) 绑定到 *** 作方法的入参中。在swagger接口文档中,不会显示出这个占位符的具体信息,如下不会显示出这个id的说明
建议使用@ApiParam注解:
也可以使用@ApiImplicitParam对接收的参数进行解释
注意:
要改成这样
八、在使用@RequestParam注解,获得前台传递的值,一般要结合@ApiParam注解使用
Springboot 集成Swagger 2(springfox)
Springfox Swagger2:
Springfox Swagger UI:
创建一个以上一个类配置swagger即可。
访问界面:IP:port/swagger-ui.html
在以上配置类中添加方法:
项目中并不需要swagger将整个项目的所有类暴露出去,通过以上配置的Bean实例,设置swagger关注并显示的接口,以及是否开启使用:
只希望在开发环境中使用swagger,但是生产环境不使用:
配置API文档分组:
配置多个分组:
在配置类中,一个Docket Bean实例,对应一个swagger分组。
@Api的属性
示例:
示例:
@ApiModel的属性:
@ApiModelProperty的属性说明:
示例:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)