SwaggerUI日常使用
最近公司项目集成springFox,记录一些swaggerUI日常使用,包括数组,文件,默认值,允许值,参数/结果类注解,响应码..等等。
一.参数注解:
单参数:@ApiImplicitParam
多参数:@ApiImplicitParams
@ApiImplicitParams({
@ApiImplicitParam(name = "pageIndex",value = "页码,默认值:0",dataType = "int",
paramType = "query"),
@ApiImplicitParam(name = "pageSize",value = "页长,默认值:20",dataType = "int",
paramType = "query")
})
可以看一下参数注解接口相关属性如下:
public @interface ApiImplicitParam {
//参数名
String name() default "";
//参数作用,对应中文名
String value() default "";
//默认值
String defaultValue() default "";
//允许值的范围,逗号分隔
String allowableValues() default "";
//是否必传,可以看到默认是非必填的
boolean required() default false;
//暂时没用到
String access() default "";
//是否允许数组
boolean allowMultiple() default false;
//参数类型:int/String之类的,注:不支持integer
String dataType() default "";
//参数作用类型:比如query正常查询参数,path表示路径参数
String paramType() default "";
//举例
String example() default ""; Example examples() default @Example({@ExampleProperty(
mediaType = "",
value = ""
)});
下面详细介绍下几种应用:
1.文件类型:
@ApiImplicitParam(name = "file",value = "文件",dataType = "file",paramType = "query")
2.数组,以string数组为例
@ApiImplicitParam(name = "type",value = "类型",dataType = "String", paramType = "query",allowMultiple = true),
3.默认值
@ApiImplicitParam(name = "type",value = "类型",dataType = "String",paramType = "query",defaultValue = "test"),
4.允许值,比如状态,开关类字段,一般只支持0/1
@ApiImplicitParam(name = "status",value = "状态",dataType = "int",paramType = "query",allowableValues = "0,1"),
5.参数/结果类注解 一般常用@requestbody封装的参数类,或者设定的结果类。
public void create(@ApiParam @RequestBody Entity entity)
然后在对应的参数类中添加响应的@apimodel和@apiproperty注解
@ApiModel
public class Entity {
@ApiModelProperty(name = "id",value = "主键")
private int id; @ApiModelProperty(name = "type",value = "类型",)
private String type;
}
6.响应码
@ApiResponses({
@ApiResponse(code = 200,message = "操作成功"), })
在swaggerui界面的model中可以看到生成效果,这里我只加了前两个注解
7.必填项,默认非必填。注:必填项一定要和接口设定一致。
@ApiImplicitParam(name = "id",value = "id",dataType = "String", paramType = "query",required = true)
8.路径参数,比如接口路径为 /type/{id},可以如下定义注解
@ApiImplicitParam(name = "id",value = "id",dataType = "String", paramType = "path",required = true)
待补充...
SwaggerUI日常使用的更多相关文章
- Spring Boot笔记(一) springboot 集成 swagger-ui
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 1.添加依赖 <!--SpringBoot整合Swagger-ui--> <depen ...
- ORACLE分区表梳理系列(二)- 分区表日常维护及注意事项(红字需要留意)
版权声明:本文发布于http://www.cnblogs.com/yumiko/,版权由Yumiko_sunny所有,欢迎转载.转载时,请在文章明显位置注明原文链接.若在未经作者同意的情况下,将本文内 ...
- ABP教程-给项目添加SwaggerUI,生成动态webapi
上一篇,我们是正式将ABP生成的代码项目,跑起来了,然后演示了下多租户的不同.那么这篇我们就来实现下SwaggerUI. Q:SwaggerUI是干什么的呢? A:他是一个能将我们的webapi,通过 ...
- Java程序员的日常—— Arrays工具类的使用
这个类在日常的开发中,还是非常常用的.今天就总结一下Arrays工具类的常用方法.最常用的就是asList,sort,toStream,equals,copyOf了.另外可以深入学习下Arrays的排 ...
- 数据库日常维护-CheckList_03有关数据库数据文件大小检查
日常数据维护中容量规划是每个DBA的基础工作之一,也是非常重要的工作.在生产环境中一些比较重要的业务数据库会用前期容量规划不足,或出现意外的爆发式的数据增长,直至盛满整个磁盘空间,系统会无法使用,最终 ...
- 数据库日常维护-CheckList_02有关数据库备份检查
数据库备份是DB日常运维中最基本的也是最重要的工作,很多情况下都是做成作业形式实现自动化周期性的做全备.差异以及日志备份.那么,如果作业出现问题没有完成工作,我们可以设置自动报警如email被动提醒我 ...
- 数据库日常维护-CheckList_01历史Agent Job执行情况检查
检查Agent Job中日常维护作业或业务作业是否成功,如每天的备份.碎片整理.索引维护.历史备份文件清除等,可利用SSMS工具,通过CDC下面设置好的DB Server List,运行下面脚本一次, ...
- [No000094]SVN学习笔记4-版本库概念与部分日常操作
基本概念 版本库 Subversion 使用集中的数据库,它包含了所有的版本控制文件及其完整历史.这个数据库就是版本库.版本库通常位于运行 Subversion 服务器的文件服务器上,向 Subver ...
- 【CentOS】Linux日常管理
/////////////////////////目录///////////////////////////////////////// 一.日常监控指标相关 1.监控系统状态命令 2.查看系统进程 ...
随机推荐
- Jeasyui的datagrid前端分页要点
Jeasyui的分页有两种方式: 1. 服务器端分页,是真正的分页,datagridview的pager会自动把pageSize和pageNum传到后台,后台根据根据pageSize和pageNum构 ...
- Net Core免费开源分布式异常日志收集框架Exceptionless
asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程 https://www.cnblogs.com/yilezhu/p/9193723.htm ...
- SyntaxError: Use of const in strict mode.
具体报错console c:\Users\Administrator\WebstormProjects\blogtest\node_modules\connect-mongo\src\index.js ...
- vfp使用笔记
1:update数据,根据记录中某个字段的值,从另一个表中查询并填充数据 UPDATE cs2013yy SET cs2013yy.ksh=NVL((SELECT cs2013gkbm.ksh FRO ...
- es6+字符串string的新增方法函数
String.includes("xxx") 返回true/false [es5的字符串查找方法:String.indexOf() ] String.startsWit ...
- angularJS在移动端的点击事件延迟问题
在运用angular开发移动端的应用时,发现它并没有将ng-click做兼容,在移动端使用ng-click事件仍然会有300ms延迟.后来发现angular有一个专门针对移动端的模块:angular- ...
- [拾零]C/C++_代码复用的实现_静态链接库_动态链接库_使用.def导出
1 静态链接库 1.1 创建静态链接库: 1.在VC6中创建项目:Win32 Static Library 2.在项目中创建两个文件:xxx.h 和 xxx.cpp 3.编译 1.2 使用静态链接库 ...
- Android笔记--View绘制流程源码分析(一)
Android笔记--View绘制流程源码分析 View绘制之前框架流程分析 View绘制的分析始终是离不开Activity及其内部的Window的.在Activity的源码启动流程中,一并包含 着A ...
- uvm_reg_file——寄存器模型(十四)
有了uvm_reg_field, uvm_reg, uvm_block, 也许我们需要跟大的uvm_file,这就是传说中的寄存器堆. // // CLASS: uvm_reg_file // Reg ...
- 洛谷 P2598 [ZJOI2009]狼和羊的故事
题目描述 “狼爱上羊啊爱的疯狂,谁让他们真爱了一场:狼爱上羊啊并不荒唐,他们说有爱就有方向......” Orez听到这首歌,心想:狼和羊如此和谐,为什么不尝试羊狼合养呢?说干就干! Orez的羊狼圈 ...