swagger注释API详细说明
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) {
- 1
- 2
- 3
- 4
- 5
- 6
- 7
@ApiModelProperty(value = "标题")private String title;
- 1
- 2
@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
- 1
- 2
- 3
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之后流就会关闭了)
- 1
- 2
- 3
- 4
- 5
- 6
- 7
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);}
- 1
- 2
- 3
- 4
- 5
- 6
Form
@ApiImplicitParams({ @ApiImplicitParam(paramType = "form", dataType = "Long", name = "id", value = "信息id", required = true) })@RequestMapping(value = "/findById5", method = RequestMethod.POST, produces = MediaType.APPLICATION_JS
swagger注释API详细说明相关推荐
- Swagger注释@API详细说明
前言: 相信无论是前端还是后端开发,都或多或少地被接口文档折磨过.前端经常抱怨后端给的接口文档与实际情况不一致.后端又觉得编写及维护接口文档会耗费不少精力,经常来不及更新.其实一个好接口文档很重要,对 ...
- ASP.NET Core WebApi使用Swagger生成api说明文档看这篇就够了
引言 在使用asp.net core 进行api开发完成后,书写api说明文档对于程序员来说想必是件很痛苦的事情吧,但文档又必须写,而且文档的格式如果没有具体要求的话,最终完成的文档则完全取决于开发者 ...
- 【转】ASP.NET Core WebApi使用Swagger生成api说明文档看这篇就够了
原文链接:https://www.cnblogs.com/yilezhu/p/9241261.html 引言 在使用asp.net core 进行api开发完成后,书写api说明文档对于程序员来说想必 ...
- 浅析如何在Nancy中使用Swagger生成API文档
原文:浅析如何在Nancy中使用Swagger生成API文档 前言 上一篇博客介绍了使用Nancy框架内部的方法来创建了一个简单到不能再简单的Document.但是还有许许多多的不足. 为了能稍微完善 ...
- ABP学习实践(五)--引入Swagger对API接口进行管理
以目前流行的前后端分离模式来看,ABP框架更适用于后端开发,而对API接口的管理就成了一项必不可少的功能. 1.安装Swashbuckle.AspNetCore 使用Nuget管理器在分布式服务层和展 ...
- SpringBoot整合Swagger测试api构建
@Author:SimpleWu 什么是Swagger? Swagger是什么:THE WORLD'S MOST POPULAR API TOOLING 根据官网的介绍: Swagger Inspec ...
- Spring MVC中使用Swagger生成API文档和完整项目示例Demo,swagger-server-api(二十)
一:Swagger介绍 Swagger是当前最好用的Restful API文档生成的开源项目,通过swagger-spring项目 实现了与SpingMVC框架的无缝集成功能,方便生成spring r ...
- 基于.NetCore3.1搭建项目系列 —— 使用Swagger做Api文档(上篇)
前言 为什么在开发中,接口文档越来越成为前后端开发人员沟通的枢纽呢? 随着业务的发张,项目越来越多,而对于支撑整个项目架构体系而言,我们对系统业务的水平拆分,垂直分层,让业务系统更加清晰,从而产生一系 ...
- 基于.NetCore3.1搭建项目系列 —— 使用Swagger做Api文档 (下篇)
前言 回顾上一篇文章<使用Swagger做Api文档 >,文中介绍了在.net core 3.1中,利用Swagger轻量级框架,如何引入程序包,配置服务,注册中间件,一步一步的实现,最终 ...
最新文章
- html禁止f12键代码,网站禁用f12 禁止调试代码方法
- python怎么实现音乐快进,python将音频进行变速的操作方法
- X86汇编——简易通讯录
- MySQL高级 - SQL优化 - 子查询优化
- Vim的NerdTree插件
- java 多态判断非空_Java多态性理解
- 四面体的表面积_边长为正四面体的表面积是()、;、;、;、。
- VMware安装ubuntu中几个问题的解决——VMware Tools
- php微信接口调用,PHP调用微信接口报错
- UVA11021 Tribbles
- mysql省市县表设计_表设计(省市县)
- android发送语音动画,Android仿微信发送语音消息的功能及示例代码
- 安徽计算机在职研究生学校,安徽能读在职研究生有哪几个学校
- java获取当前时间星期几_Java8 获取当前日期时间及星期几
- linux pdf 加水印,将动态水印添加到PDF
- 昔日的手游大作,《无尽之剑》系列如今为何走向英雄末路?
- 怎样使用Outlook连接Hotmail
- speedoffice(word)如何修改段落间距
- Dad34 Java对象的内存形式
- Java夜未眠.程序员的心声
热门文章
- motion的移植和使用
- 【信息系统项目管理师】第9章-项目人力资源管理 知识点详细整理
- Win10彻底关闭Antimalware Service Executable占用内存过高问题
- [RK3288][Android6.0] StageFright解码流程小结
- 正确使用Android性能分析工具——TraceView
- Android8.0使用ninja模块编译Settings
- android屏幕休眠和唤醒两种方法(newWakeLock)
- V4L2视频应用程序编程架构
- Anroid camera + mediacodec
- GPUImage实现水印