spring+swagger排序说明

所用版本: swagger版本信息

	<!--swagger本身不支持spring mvc的,springfox把swagger包装了一下,让他可以支持springmvc -->
		<dependency>
			<groupId>io.springfox</groupId>
			<artifactId>springfox-swagger2</artifactId>
			<version>2.6.1</version>
		</dependency>
		<dependency>
			<groupId>io.springfox</groupId>
			<artifactId>springfox-swagger-ui</artifactId>
			<version>2.6.1</version>
		</dependency>

如何排序:

由于swagger在1.5之后,已经取消了position字段排序,仅做保留处理,如下图

spring+swagger排序说明

因此,我们进行排序的时候,需要从前端页面进行排序,如图,修改swaggerUI的index.html页面代码,修改代码如下:

spring+swagger排序说明

找到 window.swaggerUi 地方,添加如下代码

        //添加一下代码,具体添加位置,可以看截图
        apisSorter: "alpha", // can also be a function ,设置排序
        operationsSorter : function(a,b){
            //自定义排序规格,按方法说明来进行排序
            return a.summary.localeCompare(b.summary);    
        	
        }, // can also be 'alpha' or a function  

在前端界面设置好排序规格后,修改后端的接口说明,实现排序

比如:

对模块进行排序

@Api(tags="1、测试排序1")//这里用tags,因为tags会覆盖value,主要以tags为主,所以直接用tags

@Api(tags="2、测试排序2")//这里用tags,因为tags会覆盖value,主要以tags为主,所以直接用tags

@Api(tags="3、测试排序3")//这里用tags,因为tags会覆盖value,主要以tags为主,所以直接用tags

对方法进行排序

@ApiOperation("1、测试方法排序1")

@ApiOperation("2、测试方法排序2")

@ApiOperation("3、测试方法排序3")

注解效果图:

spring+swagger排序说明

具体显示效果,如图:

spring+swagger排序说明

到此,文档的排序效果就已经实现