`

swagger常用注解

 
阅读更多
swagger2常用注解说明

说明: 
1.这里使用的版本:springfox-swagger2(2.4)springfox-swagger-ui (2.4) 
2.这里是说明常用注解的含义和基本用法(也就是说已经对swagger进行集成完成) 
没有集成的请参见 
SpringBoot集成springfox-swagger2构建restful API 
SpringMVC集成springfox-swagger2构建restful API 
官网WIKI 
常用注解: 
@Api()用于类; 
表示标识这个类是swagger的资源 
@ApiOperation()用于方法; 
表示一个http请求的操作 
@ApiParam()用于方法,参数,字段说明; 
表示对参数的添加元数据(说明或是否必填等) 
@ApiModel()用于类 
表示对类进行说明,用于参数用实体类接收 
@ApiModelProperty()用于方法,字段 
表示对model属性的说明或者数据操作更改 
@ApiIgnore()用于类,方法,方法参数 
表示这个方法或者类被忽略 
@ApiImplicitParam() 用于方法 
表示单独的请求参数 
@ApiImplicitParams() 用于方法,包含多个 @ApiImplicitParam

具体使用举例说明: 
@Api() 
用于类;表示标识这个类是swagger的资源 
tags–表示说明 
value–也是说明,可以使用tags替代 
但是tags如果有多个值,会生成多个list

@Api(value="用户controller",tags={"用户操作接口"})
@RestController
public class UserController {

}
  • 1
  • 2
  • 3
  • 4
  • 5

效果图: 
这里写图片描述

@ApiOperation() 用于方法;表示一个http请求的操作 
value用于方法描述 
notes用于提示内容 
tags可以重新分组(视情况而用) 
@ApiParam() 用于方法,参数,字段说明;表示对参数的添加元数据(说明或是否必填等) 
name–参数名 
value–参数说明 
required–是否必填

@Api(value="用户controller",tags={"用户操作接口"})
@RestController
public class UserController {
     @ApiOperation(value="获取用户信息",tags={"获取用户信息copy"},notes="注意问题点")
     @GetMapping("/getUserInfo")
     public User getUserInfo(@ApiParam(name="id",value="用户id",required=true) Long id,@ApiParam(name="username",value="用户名") String username) {
     // userService可忽略,是业务逻辑
      User user = userService.getUserInfo();

      return user;
  }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

效果图: 
这里写图片描述

@ApiModel()用于类 ;表示对类进行说明,用于参数用实体类接收 
value–表示对象名 
description–描述 
都可省略 
@ApiModelProperty()用于方法,字段; 表示对model属性的说明或者数据操作更改 
value–字段说明 
name–重写属性名字 
dataType–重写属性类型 
required–是否必填 
example–举例说明 
hidden–隐藏

@ApiModel(value="user对象",description="用户对象user")
public class User implements Serializable{
    private static final long serialVersionUID = 1L;
     @ApiModelProperty(value="用户名",name="username",example="xingguo")
     private String username;
     @ApiModelProperty(value="状态",name="state",required=true)
      private Integer state;
      private String password;
      private String nickName;
      private Integer isDeleted;

      @ApiModelProperty(value="id数组",hidden=true)
      private String[] ids;
      private List<String> idList;
     //省略get/set
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  @ApiOperation("更改用户信息")
  @PostMapping("/updateUserInfo")
  public int updateUserInfo(@RequestBody @ApiParam(name="用户对象",value="传入json格式",required=true) User user){

     int num = userService.updateUserInfo(user);
     return num;
  }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

效果图: 
这里写图片描述

这里写图片描述

@ApiIgnore()用于类或者方法上,可以不被swagger显示在页面上 
比较简单, 这里不做举例

@ApiImplicitParam() 用于方法 
表示单独的请求参数 
@ApiImplicitParams() 用于方法,包含多个 @ApiImplicitParam 
name–参数ming 
value–参数说明 
dataType–数据类型 
paramType–参数类型 
example–举例说明

  @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(){

  }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

效果图: 

 

分享到:
评论

相关推荐

    Swagger 常用注解说明.docx

    swagger 常用注解学习总结

    Swagger常用注解使用说明

    swagger 用户已api文档自动生成,可以大幅提高客户端和服务端的开发人员的协作效率。本资源主要描述了swagger 注解的使用方法。

    Swagger技术.docx

    Swagger技术 一、Swagger 简介 二、Springfox 三、Swagger 用法 四、Swagger-UI 使用 五、Swagger 配置 六、Swagger2 常用注解

    Swagger笔记.md

    swagger在springboot项目中的常用注解使用,接口界面访问方法,界面导出为文档方法

    Swagger3 API接口文档规范课程(教学视频+源代码)

    3 Swagger3 常用配置注解讲解 3.1 Swagger3常用配置如下: 3.2 实例一 `@ApiImplicitParams` 和 `@ApiImplicitParam` 参数描述 3.3 实例二 `@ApiModel` , `@ApiModelProperty` 实体参数描述 3.4 实例三 `@...

    boot-swagger2.zip

    SpringBoot 2.1.8.RELEASE 整合Swagger接口文档、实现了常用注解使用及接口调用实例信息。

    SpringBoot2 整合Swagger-UI

    SpringBoot2 整合Swagger-UISwagger-UI常用注解整合Swagger-UI添加Swagger-UI的配置给Controller类添加Swagger注解启动项目,查看Swagger-UI文档参考文档 Swagger-UI Swagger-UI是HTML, Javascript, CSS的一个集合,...

    Java springBoot + swagger + mybatis

    Java springBoot + swagger + mybatis。 利用swagger的特性对SpringBoot中常用的操作和标签的注解做全面的测试 springBoot swagger

    Spring Boot集成Swagger使用指南.pdf

    文档为使用Spring Boot集成Swagger使用指南,主要包括swagger的组成,集成过程,以及常用注解的解释,通过文档应该可以使用swagger展示自己撰写的REST接口,进而更好的进行前后端交互。

    springBoot+swagger+mybatis

    利用swagger的特性对SpringBoot中常用的操作和标签的注解做全面的测试

    genDoc:帮助您生成API文档

    兼容swagger ,在接收swagger的项目之前,可以不做迁移(swagger只支持部分常用注解,如有需要支持部分,请提问题) 生成离线html文档,文档页面美观直接,支持接口搜索,实体信息查看,比传统的手写文档更加方便...

    springBootDemo

    swagger注解总结 快速上手 项目源码 Spring Boot 集成 MyBatis Mybatis原理简介 官方组件包使用 XML版本 注解版本 项目源码 第三方组件包使用 集成 mybatis generator 集成通用 Mapper 插件 集成分页...

    115-springboot-demo-smart-doc.rar

    SpringBoot接口 - 如何生成接口文档之集成Smart-Doc上文我们看到可以通过Swagger系列可以快速生成API文档, 但是这种API文档生成是需要在接口上添加注解等,这表明这是一种侵入式方式; 那么有没有非侵入式方式呢, ...

    jeethink快速开发框架后台管理系统(工作流版).zip

     对常用js插件进行二次封装,使js代码变得简洁,更加易维护  完善的XSS防范及脚本过滤,彻底杜绝XSS攻击  Maven多项目依赖,模块及插件分项目,尽量松耦合,方便模块升级、增减模块。  国际化支持,服务端...

    java大厂200+面试题总结(附答案)

    我觉得短时间提升自己最快的手段就是背面试题,最近总结了Java常用的面试题,分享给大家,希望大家都能圆梦大厂,加油,我命由我不由天。 Spring Boot比Spring多哪些注解 打包和部署 Spring Boot如何访问不同的...

    狂神笔记,b站狂神说课程笔记大全(最新)

    8、JavaSE:常用类 9、JavaSE:集合框架 10、JavaSE:IO流 11、JavaSE:多线程 12、JavaSE:网络编程 13、JavaSE:Gui编程 14、JavaSE:注解和反射 15、MySQL和JDBC 16、前端:Html5 17、前端:CSS3 18、前端:...

    狂神说上课笔记未删减 Java基础到技术升级

    8、JavaSE:常用类 9、JavaSE:集合框架 10、JavaSE:IO流 11、JavaSE:多线程 12、JavaSE:网络编程 13、JavaSE:Gui编程 14、JavaSE:注解和反射 15、MySQL和JDBC 16、前端:Html5 17、前端:CSS3 18、...

    基于SpringBoot编写的RESTFul API,使用HTTP状态码与JSON作为响应规范+源代码+文档说明

    首先本项目是一个RESTFul API服务的demo,与此同时再集成了一些做API常用的工具。 对于RESTFul API服务各有各的见解,网上大多是自己封装了controller层统一格式返回,通常情况下,不管你怎么请求,它总是响应你的...

    淘宝放单源码Java-agan-boot:gan-boot

    常用配置 4.SpringBoot 自定义配置 5.SpringBoot的yml配置详解 大厂面试题:请讲下SpringBoot的日志框架原理? 配置日志的存储路径、设置日志的格式 02 在springboot中使用lombok 为什么要使用lombok,它解决了...

    Diboot轻代码开发平台

    2、并且支持较为常用的五种数据库(MySQL,ORACLE,SQLServer,PostgreSQL,MariaDB); 3、代码自动生成到项目相应的目录下; 4、数据库表结构更改后,可以同步更改对应文件的代码,而不影响到你自己写的代码; 5、...

Global site tag (gtag.js) - Google Analytics