| package com.zt.common.utils; | 
|   | 
| import com.zt.common.constant.Constant; | 
| import io.swagger.annotations.ApiOperation; | 
| import springfox.documentation.builders.ApiInfoBuilder; | 
| import springfox.documentation.builders.PathSelectors; | 
| import springfox.documentation.builders.RequestHandlerSelectors; | 
| import springfox.documentation.service.ApiKey; | 
| import springfox.documentation.spi.DocumentationType; | 
| import springfox.documentation.spring.web.plugins.Docket; | 
|   | 
| import java.util.List; | 
|   | 
| import static com.google.common.collect.Lists.newArrayList; | 
|   | 
| public class DocketUtil { | 
|   | 
|     public static Docket getDocket(String title, String groupName, String packageName) { | 
|         return new Docket(DocumentationType.SWAGGER_2).groupName(groupName) | 
|                 .apiInfo(new ApiInfoBuilder().title(title).build()).select() | 
|                 // 加了ApiOperation注解的类,生成接口文档 | 
|                 .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)) | 
|                 // 包下的类,生成接口文档 | 
|                 .apis(RequestHandlerSelectors.basePackage(packageName)).paths(PathSelectors.any()).build() | 
|                 .directModelSubstitute(java.util.Date.class, String.class).securitySchemes(security()); | 
|     } | 
|   | 
|     private static List<ApiKey> security() { | 
|         return newArrayList(new ApiKey(Constant.Sys.TOKEN_HEADER, Constant.Sys.TOKEN_HEADER, "header")); | 
|     } | 
| } |