swagger注释API详细说明

2023-11-17

API详细说明

注释汇总

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

@RequestMapping此注解的推荐配置 
value 
method 
produces

示例:

    @ApiOperation("信息软删除")
    @ApiResponses({ @ApiResponse(code = CommonStatus.OK, message = "操作成功"),
            @ApiResponse(code = CommonStatus.EXCEPTION, message = "服务器内部异常"),
            @ApiResponse(code = CommonStatus.FORBIDDEN, message = "权限不足") })
    @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", dataType = "Long", name = "id", value = "信息id", required = true) })
    @RequestMapping(value = "/remove.json", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
    public RestfulProtocol remove(Long id) {
    @ApiModelProperty(value = "标题")
    private String  title;

@ApiImplicitParam

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

paramType 示例详解

path

 @RequestMapping(value = "/findById1/{id}", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)

 @PathVariable(name = "id") Long id

body

  @ApiImplicitParams({ @ApiImplicitParam(paramType = "body", dataType = "MessageParam", name = "param", value = "信息参数", required = true) })
  @RequestMapping(value = "/findById3", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)

  @RequestBody MessageParam param

  提交的参数是这个对象的一个json,然后会自动解析到对应的字段上去,也可以通过流的形式接收当前的请求数据,但是这个和上面的接收方式仅能使用一个(用@RequestBody之后流就会关闭了)

 

header

  @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "Long", name = "id", value = "信息id", required = true) }) 

   String idstr = request.getHeader("id");
        if (StringUtils.isNumeric(idstr)) {
            id = Long.parseLong(idstr);
        }

Form

@ApiImplicitParams({ @ApiImplicitParam(paramType = "form", dataType = "Long", name = "id", value = "信息id", required = true) })
 @RequestMapping(value = "/findById5", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE, consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

swagger注释API详细说明 的相关文章

随机推荐

  • 推荐 OS X 下最方便实用的六款解压缩软件

    对于我们这种资料特别多 随时都需要跟工作伙伴沟通传递资料的人来说 一款方便的压缩软件真的太重要了 不仅可以节省时间 节省内存 更重要的是提高工作效率 今天废鱼就给大家推荐几款常用压缩软件 The Unarchiver The Unarchi
  • 【华为OD统一考试B卷

    在线OJ 本题通过率100 已购买本专栏用户 请私信博主开通账号 在线刷题 运行出现 Runtime Error 0Aborted 请忽略 华为OD统一考试A卷 B卷 新题库说明 2023年5月份 华为官方已经将的 2022 0223Q 1
  • 2021全国大学生电子设计竞赛F题(智能送药小车)国一赛后总结

    作为2022年的第一篇博客 思索了很久 就以此为题吧 11月7号随着电赛比赛的结束 我的大学竞赛生涯也差不多告一段落了 那天的心情也是无法用语言形容 第二天就又回归了正常的上课生活 2021年的电赛 既让人期盼 又存在许多变数 这一切都要从
  • java日期格式化yyyy-mm-dd

    在 Java 中 你可以使用 SimpleDateFormat 类来格式化日期 以 yyyy MM dd 为例 你可以这样写 SimpleDateFormat dateFormat new SimpleDateFormat yyyy MM
  • 回调函数 —— 借助中间通用函数(形参里有函数指针,实现函数注册)调用不同的回调函数 (多态/分层)

    回调函数传参 函数指针做函数参数 回调函数 目录 背景 回调函数是实现函数分层且单向依赖的好办法 使用函数指针运行 struct结构体回调函数代码更清晰 简单理解回调函数 Demo 其他回调函数博文 背景 这是我在实际工作中遇到的问题 线程
  • VSCode中简单使用Git

    在一个目录下clone项目 git clone 项目 git 使用VScode 打开项目 使用vscode修改代码并提交代码 修改代码 点击 相当于git add 点击对号 等于git commit m 备注信息 右边的箭头输入需要备注的信
  • Angular6学习笔记5:修改组件的属性并实时显示(ngModel)

    修改组件的属性并实时显示 ngModel 继学习笔记4以后 可以在一个AppComponent中显示了heroesComponent的属性信息 但是hero的Name往往是可以更改的 并将更改后的数据进行实时显示 1 将hero的Name重
  • umi4js集成Material UI

    umi4js集成Material UI 效果图 创建umi项目 创建umi项目 umi 目录结构 启用插件 dva 页面中使用dva 使用useDispatch useSelector 编辑layout createTheme 根据rout
  • 利用GEE计算遥感生态指数(RSEI)

    城市生态与人类生活息息相关 快速 准确 客 观地了解城市生态状况已成为生态领域的一个研究重点 基于遥感技术 提出一个完全基于遥感技术 以自然因子为主的遥感生态指数 RSEI 来对城市的生态状况进行快速监测与评价 该指数利用主成分分析技术集成
  • 这里推荐几个前端动画效果网站

    1 AnimistaAnimista 是一个 CSS 动画 转场库和在线工具 它有许多现成的 CSS 动画片段可以直接使用 也可以在线定制动画 网站地址 Animista On Demand CSS Animations Library 2
  • jmeter获取cookie值,设置集合点,参数化

    1 使用csv数据文件 进行登录会员的参数化 2 设置登录接口 3 在登录接口中设置集合点 4 在bin目录下 打开jmeter properties文件 CookieManager save cookies false改为true 并把
  • idea类图使用、时序图

    1 查看是否支持类图 idea默认已经集成了该功能 1 1 配置类图生成内容 搜索Diagrams 可以配置类图生成时的现实内容 2 自动生成类图 选择package或类 2 1 选择类 2 1 1 显示子类 ctrl alt b 可显示子
  • 关于nginx无论怎么配置都还是跳转到欢迎界面的解决方案

    hello 各位猿友们 是不是在第一使用nginx时 会遇到无论你怎么修改nginx conf文件都还是跳转到欢迎界面的问题 然后把度娘翻了个遍都然并卵 你说绝不绝望 生不生气 莫要慌 救世主来了 产生该问题的原因 兄die 你改错地方了
  • Shell排序(java版)

    博主介绍 程序员悟啦 乌拉 个人仓库 码云 座右铭 懒 对一个人的毁灭性有多大 早起的重要性就多大 免责声明 文章由博主原创 部分文章整理于网络 仅供学习和知识分享 相遇是缘 既然来了就拎着小板凳 坐下来一起唠会儿 如果在文中有所收获 请别
  • ROS 报错 ModuleNotFoundError: No module named ‘rospkg‘

    文章目录 写在前面 一 问题描述 二 出现原因 1 Anaconda base 环境下的出现原因 2 Anaconda 虚拟环境下的出现原因 三 解决方法 1 Anaconda base 环境下解决方法 2 Anaconda 虚拟环境下解决
  • 对象与Json字符串互转工具类

    import com fasterxml jackson core JsonProcessingException import com fasterxml jackson databind JavaType import com fast
  • 数据库设计DDL

    DDL 数据定义语言 用来定义数据库对象 数据库 表 DDL 数据库操作 查询 查询所有数据库 show databases 查询当前数据库 select database 使用 使用数据库 use 数据库名 创建 创建数据库 create
  • kali linux网络相关nmcli:ip、网关、路由、DNS的查看修改

    一 查看信息 设备device nmcli device show eht0 查看网卡设备的信息 ip 网关 路由 DNS 指定网卡eth0 nmcli device status 查看网卡设备的状态 nmcli device discon
  • Linux基础学习01——部署虚拟环境安装Linux 系统(VMware WorkStation Pro 16+ RHEL8 )

    VmwareWorkStation 16 虚拟机软件 必需 这是一款功能强大的桌面虚拟计算机软件 能够让用户在单一主机同时运行多个不同的操作系统 同时支持实时快照 虚拟网络 拖曳文件以及PXE等强悍功能 点此百度网盘下载密码 hh6t Re
  • swagger注释API详细说明

    API详细说明 注释汇总 作用范围 API 使用位置 对象属性 ApiModelProperty 用在出入参数对象的字段上 协议集描述 Api 用于controller类上 协议描述 ApiOperation 用在controller的方法