最近公司项目集成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日常使用的更多相关文章

  1. Spring Boot笔记(一) springboot 集成 swagger-ui

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 1.添加依赖 <!--SpringBoot整合Swagger-ui--> <depen ...

  2. ORACLE分区表梳理系列(二)- 分区表日常维护及注意事项(红字需要留意)

    版权声明:本文发布于http://www.cnblogs.com/yumiko/,版权由Yumiko_sunny所有,欢迎转载.转载时,请在文章明显位置注明原文链接.若在未经作者同意的情况下,将本文内 ...

  3. ABP教程-给项目添加SwaggerUI,生成动态webapi

    上一篇,我们是正式将ABP生成的代码项目,跑起来了,然后演示了下多租户的不同.那么这篇我们就来实现下SwaggerUI. Q:SwaggerUI是干什么的呢? A:他是一个能将我们的webapi,通过 ...

  4. Java程序员的日常—— Arrays工具类的使用

    这个类在日常的开发中,还是非常常用的.今天就总结一下Arrays工具类的常用方法.最常用的就是asList,sort,toStream,equals,copyOf了.另外可以深入学习下Arrays的排 ...

  5. 数据库日常维护-CheckList_03有关数据库数据文件大小检查

    日常数据维护中容量规划是每个DBA的基础工作之一,也是非常重要的工作.在生产环境中一些比较重要的业务数据库会用前期容量规划不足,或出现意外的爆发式的数据增长,直至盛满整个磁盘空间,系统会无法使用,最终 ...

  6. 数据库日常维护-CheckList_02有关数据库备份检查

    数据库备份是DB日常运维中最基本的也是最重要的工作,很多情况下都是做成作业形式实现自动化周期性的做全备.差异以及日志备份.那么,如果作业出现问题没有完成工作,我们可以设置自动报警如email被动提醒我 ...

  7. 数据库日常维护-CheckList_01历史Agent Job执行情况检查

    检查Agent Job中日常维护作业或业务作业是否成功,如每天的备份.碎片整理.索引维护.历史备份文件清除等,可利用SSMS工具,通过CDC下面设置好的DB Server List,运行下面脚本一次, ...

  8. [No000094]SVN学习笔记4-版本库概念与部分日常操作

    基本概念 版本库 Subversion 使用集中的数据库,它包含了所有的版本控制文件及其完整历史.这个数据库就是版本库.版本库通常位于运行 Subversion 服务器的文件服务器上,向 Subver ...

  9. 【CentOS】Linux日常管理

    /////////////////////////目录///////////////////////////////////////// 一.日常监控指标相关 1.监控系统状态命令 2.查看系统进程 ...

随机推荐

  1. Jeasyui的datagrid前端分页要点

    Jeasyui的分页有两种方式: 1. 服务器端分页,是真正的分页,datagridview的pager会自动把pageSize和pageNum传到后台,后台根据根据pageSize和pageNum构 ...

  2. Net Core免费开源分布式异常日志收集框架Exceptionless

    asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程 https://www.cnblogs.com/yilezhu/p/9193723.htm ...

  3. SyntaxError: Use of const in strict mode.

    具体报错console c:\Users\Administrator\WebstormProjects\blogtest\node_modules\connect-mongo\src\index.js ...

  4. vfp使用笔记

    1:update数据,根据记录中某个字段的值,从另一个表中查询并填充数据 UPDATE cs2013yy SET cs2013yy.ksh=NVL((SELECT cs2013gkbm.ksh FRO ...

  5. es6+字符串string的新增方法函数

    String.includes("xxx")   返回true/false     [es5的字符串查找方法:String.indexOf() ] String.startsWit ...

  6. angularJS在移动端的点击事件延迟问题

    在运用angular开发移动端的应用时,发现它并没有将ng-click做兼容,在移动端使用ng-click事件仍然会有300ms延迟.后来发现angular有一个专门针对移动端的模块:angular- ...

  7. [拾零]C/C++_代码复用的实现_静态链接库_动态链接库_使用.def导出

    1 静态链接库 1.1 创建静态链接库: 1.在VC6中创建项目:Win32 Static Library 2.在项目中创建两个文件:xxx.h 和 xxx.cpp 3.编译 1.2 使用静态链接库 ...

  8. Android笔记--View绘制流程源码分析(一)

    Android笔记--View绘制流程源码分析 View绘制之前框架流程分析 View绘制的分析始终是离不开Activity及其内部的Window的.在Activity的源码启动流程中,一并包含 着A ...

  9. uvm_reg_file——寄存器模型(十四)

    有了uvm_reg_field, uvm_reg, uvm_block, 也许我们需要跟大的uvm_file,这就是传说中的寄存器堆. // // CLASS: uvm_reg_file // Reg ...

  10. 洛谷 P2598 [ZJOI2009]狼和羊的故事

    题目描述 “狼爱上羊啊爱的疯狂,谁让他们真爱了一场:狼爱上羊啊并不荒唐,他们说有爱就有方向......” Orez听到这首歌,心想:狼和羊如此和谐,为什么不尝试羊狼合养呢?说干就干! Orez的羊狼圈 ...