1. 存在的问题

我们在项目中使用swagger2.0时,发现如下问题:

我们想要按字段排序必须显示声明排序字段@ApiModelProperty(position=0)

swagger对注解@ApiOperation不支持position属性了,即不能按照指定接口顺序排序。(ps:官方也不提供解决,说设计如此,通过接口地址来排序。链接)

2.解决方法

查询官网

使用对应的扩展插件(ModelPropertyBuilderPlugin、OperationBuilderPlugin)

2.1使用ModelPropertyBuilderPlugin按代码顺序展示请求和响应字段

可以参考ModelPropertyBuilderPlugin的实现类ApiModelPropertyPropertyBuilder来实现自己的插件,

大概实现思路为:获取到字段上有ApiModelProperty注解的字段所在的类,然后获取所有字段数组,看这个字段在数组的哪个位置,就设置position属性。

实现代码如下:

/**

* 通过编写插件实现字段按类变量定义顺序排序,丰富模型属性

*/

@Component

public class CustomApiModelPropertyPositionBuilder implements ModelPropertyBuilderPlugin {

private Log log = LogFactory.getLog(getClass());

@Override

public boolean supports(DocumentationType

swagger 接口参数顺序_swagger扩展为按代码定义顺序展示接口和字段相关推荐

  1. 计算机接口参数在哪儿看,怎么看笔记本cpu接口参数

    很多用户购买了CPU后,都想查看有关信息,那如何查看CPU接口参数呢?下面是学习啦小编为大家介绍笔记本电脑CPU接口参数的查看方法,欢迎大家阅读. 笔记本电脑CPU接口参数的查看方法 目前市场上见到比 ...

  2. java类定义的顺序_Java类及对象的初始化顺序

    1.初始化规则: 下面规则优先级从前往后依次降低 0.加载一个类时先初始化基类后初始化扩展类: 1.类的初始化高于对象的初始化: 类的初始化依靠静态代码(被static标识的),静态代码块.静态变量这 ...

  3. java类编来那个初始化顺序_Java类及对象的初始化顺序

    1.初始化规则: 下面规则优先级从前往后依次降低 ①.加载一个类时先加载初始化基类后加载初始化扩展类: ②.类的初始化高于实例的初始化: 类的初始化依靠(静态代码块static{....})以及(静态 ...

  4. java类的运行顺序_Java语言类的基本运行顺序

    本文主要向大家介绍了Java语言类的基本运行顺序,通过具体的代码向大家展示,希望对大家学习Java语言有所帮助.我们以下面的类来说明一个基本的 Java 类的运行顺序:1. public class  ...

  5. php开发视频播放顺序,请问关于php代码运行顺序问题

    麻烦会的朋友帮忙回答下 以下的问题, 谢谢啦. 在网上下载了套代码. 如下 admin.php 文件: 对于以下这段代码, 究竟代码是怎么跑的呢? 也就是比如说 以下的代码,什么时候 才会跑 if ( ...

  6. swagger 接口参数顺序_Swagger常用参数用法 - mao2080 - 博客园

    别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处: http://www.cnblogs.com/ ...

  7. 偏前端 - vue-cli(axios请求数据==》token+按接口参数顺序(参数值拼接base64)- MD5)...

    token+按接口参数顺序(参数值拼接base64)-> MD5) 请教于"喵咪",再此特别鸣谢!~ 特别强调:import qs from qs; 这个内部方法一定要用哦. ...

  8. Swagger使用————接口参数注解的使用缺陷

    问题描述 在使用springboot开发web项目时,用到了swagger框架,来生成web api文档.但是其中有一项是举例说明参数的结构,如下图: 但是,这个功能真的是非常方便,因为可以让前端开发 ...

  9. SpringBoot2 | Spring IOC 流程中核心扩展接口的12个扩展点源码分析(十一)

    微信公众号:吉姆餐厅ak 学习更多源码知识,欢迎关注. SpringBoot2 | SpringBoot启动流程源码分析(一) SpringBoot2 | SpringBoot启动流程源码分析(二) ...

最新文章

  1. MySQL的information_schema
  2. 机器学习入门|快速掌握逻辑回归模型
  3. IBM营收持续下滑 不过蓝色巨人证明自己非老矣
  4. WPF轮播图实现方式
  5. 怎样安装python在桌面_在Windows上安装和配置 Jupyter Lab 作为桌面级应用程序教程...
  6. 推荐系统顶会RecSys’20亮点赏析
  7. php优化上百次foreach,php – 优化数千个项目的foreach
  8. mac java 版本_Mac 下 Java 多版本切换
  9. python 爬虫 微博 github_GitHub - peanut-shi/weiboSpider: 新浪微博爬虫,用python爬取新浪微博数据...
  10. 数据库工作笔记008---mysql开启远程访问权限_ 1042 Can't get hostname for your address_Access denied for user 'root'@'
  11. python从入门到精通需要多久-学Python编程难吗 从入门到精通学习Python要多久
  12. Coursera心理学课程考试小抄
  13. [转载] Python_range()_逆序
  14. Windows Phone中Map控件由浅及深
  15. iOS之某公司iOS开发笔试题
  16. mysql中order by的原理
  17. 前端视频播放初探总结,video标签-视频插件jwplayer
  18. python输出九九乘法表
  19. 利用C 语言求一元二次方程解
  20. Java(十三)集合类(2)

热门文章

  1. redis-发布与订阅
  2. android 说出密码,小米路由器微信好友认证功能实际体验
  3. 信息安全人员关注网站
  4. bzoj2298 Problem a
  5. C#注册和注销全局快捷键
  6. MyBatis中的多条件查询
  7. STM32与人体红外感应模块的简单使用——入门级
  8. 利用fiddler和低版本的iTunes实现iOS抓包
  9. 【100个 Unity小知识点】☀️ | Unity 中怎样读取Excel文件
  10. 袋鼠!沃尔沃的无人车就是搞不定这种动物