在pom.xml文件添加
1 <!-- swagger --> 2 <dependency> 3 <groupId>io.springfox</groupId> 4 <artifactId>springfox-swagger2</artifactId> 5 <version>2.9.2</version> 6 </dependency> 7 <dependency> 8 <groupId>io.springfox</groupId> 9 <artifactId>springfox-swagger-ui</artifactId> 10 <version>2.9.2</version> 11 </dependency>
添加swagger配置类
1 import io.swagger.annotations.Api; 2 import org.springframework.context.annotation.Bean; 3 import org.springframework.context.annotation.Configuration; 4 import springfox.documentation.builders.ApiInfoBuilder; 5 import springfox.documentation.builders.ParameterBuilder; 6 import springfox.documentation.builders.PathSelectors; 7 import springfox.documentation.builders.RequestHandlerSelectors; 8 import springfox.documentation.schema.ModelRef; 9 import springfox.documentation.service.ApiInfo; 10 import springfox.documentation.service.Parameter; 11 import springfox.documentation.spi.DocumentationType; 12 import springfox.documentation.spring.web.plugins.Docket; 13 import springfox.documentation.swagger2.annotations.EnableSwagger2; 14 import java.util.ArrayList; 15 import java.util.List; 16 17 /** 18 * swagger配置文档 19 */ 20 @Configuration 21 @EnableSwagger2 22 public class SwaggerConfig2 { 23 24 @Bean 25 public Docket createRestApi() { 26 //在配置好的配置类中增加此段代码即可 27 ParameterBuilder ticketPar = new ParameterBuilder(); 28 List<Parameter> pars = new ArrayList<Parameter>(); 29 //名称 30 ticketPar.name("ACCESS_TOKEN") 31 //表示描述 32 .description("登录校验") 33 .modelRef(new ModelRef("string")) 34 .parameterType("header") 35 //是否必填 36 .required(false). 37 //默认值 38 defaultValue("") 39 .build(); 40 pars.add(ticketPar.build()); 41 return new Docket(DocumentationType.SWAGGER_2) 42 .apiInfo(apiInfo()) 43 .select() 44 // 只扫描带api注解的ID 45 .apis(RequestHandlerSelectors.withClassAnnotation(Api.class)) 46 //这里采用包扫描的方式来确定要显示的接口 47 // .apis(RequestHandlerSelectors.basePackage("com.cn.controller")) 48 .paths(PathSelectors.any()) 49 .build() 50 .globalOperationParameters(pars) 51 .apiInfo(apiInfo()); 52 } 53 54 private ApiInfo apiInfo() { 55 return new ApiInfoBuilder() 56 .title("API") 57 .description("接口文档") 58 .termsOfServiceUrl("") 59 .version("1.00") 60 .build(); 61 } 62 }
在启动类上添加包扫描