在最近的文章中介绍了swagger的一些基本使用,网友也是互动满满,可见swagger但是都比较感冒,其中有一个网友不停的问我一个swagger排序的问题。第一次看到的时候,确实没想去解决的(^_^,怪我说大实话了),主要是因为在工作中,我也没有使用使用swagger进行管理,确实没有动力去研究啦。这网友还真有坚持不懈的劲头,不停的骚扰我(开个玩笑不要介意哦),那好吧,本着对粉丝负责的原则,那就研究研究吧,不了解,不知道,一了解掉进坑里了。
网友的韧劲
在说之前,我们看看这网友的韧劲:
切换到第一场景:
切换到第二场景:
排序说明
对于swagger2的话,默认排序使用的是Alpha排序。
默认按照字母进行排序,a,b,c,e…
更改排序方式一(已被废弃)
第一种排序的方式是使用position参数,如下简单的代码(代码支持左右滑动):
@RequestMapping("/api/test")
@Api(position=3,value="TestController")
public class TestController {
}
这种方式简单的我都想哭了o(╥﹏╥)o,为啥呐,只支持1.x的版本,2.x的版本不支持了,官方说2.x的排序默认就是按照字母进行排序了,position在1.5.x就被我们干掉了,大哥,你还是干掉我吧,具体看如下说明:
Not used in 1.5.X,kept for legacy support.
the position of thisAPI in the resource listing, no longer used.
看完我只想静静,别问静静是谁…
更改排序方式二
上帝为你关闭了一扇门,就一定会为你打开一扇窗。在要看到的黑暗的时候,突然一丝光线从黑暗中透过。
几经波折,发现有一种方式,可以使用tags实现排序的效果。怎么操作呢?
刚刚是如下的效果:
那么我就可以通过tags实现如下的效果:
那具体的代码是怎么写的呢?
@RequestMapping("/api/test")
@Api(value="TestController",tags= {"API-1"})
public class TestController {
}
@RequestMapping("/api/test")
@Api(value="TestController2",tags= {"API-2"})
public class TestController2 {
}