最近公司项目集成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. 4.高级数据过滤 ---SQL

    一.AND操作符 要通过不止一个列进行过滤,可以使用A ND操作符给WHERE子句附加条件. SELECT prod_id, prod_price, prod_name FROM Products ; ...

  2. Xshell连接不上虚拟机&连接提示SSH服务器拒绝了密码,请再试一次

    问题1:Xshell连接不上虚拟机 #启动ssh服务 /etc/init.d/ssh start #查看SSH服务22端口是否开启 netstat -antulp | grep ssh 问题2:XSh ...

  3. SSM Spring SpringMVC Mybatis框架整合Java配置完整版

    以前用着SSH都是老师给配好的,自己直接改就可以.但是公司主流还是SSM,就自己研究了一下Java版本的配置.网上大多是基于xnl的配置,但是越往后越新的项目都开始基于JavaConfig配置了,这也 ...

  4. vi命令使用

    在vi下如何显示行号? 按Esc切换到命令行模式,输入: :set nu 如果您想每次进入vi都标出行号,编辑~/.vimrc文件.也就是在用户的主目录下,编辑存档.vimrc文件.里边写一行: se ...

  5. Java选择排序算法

    package com.jckb; /**选择排序 * * @author gx *算法原理: *第一个数和后面每个数进行比较,如果大于后面的数就进行位置交换, *第一次比较结束后得到了最小值 */ ...

  6. Java ActiveMQ 示例

    所需引入Jar包: jms-1.1.jar activemq-all-5.15.0.jar 生产者 package com.mousewheel.demo; import javax.jms.Conn ...

  7. JAVA分包下项目部分代码存储

    一.注册时姓名去重和符合汉字格式: // 新用户申请加入 public void NewHuman() { System.out.println("========新会员申请加入页面==== ...

  8. spring项目后台中打印sql语句

    配置方法很简单,只要在配置文件application.yml加入以下语句 logging: level: main.java.iReview.dao: debug 其中包的位置应为dao层的包位置,不 ...

  9. Android 设置资源字体,屏幕截图

    字体设置 将下载的资源字体放在assets中, 引用设置 edit..setTypeface(Typeface.createFromAsset(getAssets(), "字体名.ttf&q ...

  10. Python3+Selenium3+webdriver学习笔记7(选择多链接的结果、iframe、下拉框)

    #!/usr/bin/env python# -*- coding:utf-8 -*- from selenium import webdriverfrom selenium.webdriver.co ...