引入依赖

  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>
  12. <!-- swagger end-->

添加配置类

  1. import org.springframework.context.annotation.Configuration;
  2. import springfox.documentation.builders.ApiInfoBuilder;
  3. import springfox.documentation.builders.PathSelectors;
  4. import springfox.documentation.builders.RequestHandlerSelectors;
  5. import springfox.documentation.service.ApiInfo;
  6. import springfox.documentation.spi.DocumentationType;
  7. import springfox.documentation.spring.web.plugins.Docket;
  8. import springfox.documentation.swagger2.annotations.EnableSwagger2;
  9. @Configuration
  10. @EnableSwagger2
  11. public class SwaggerConfig {
  12. @Bean
  13. public Docket createRestApi(){
  14. return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select()
  15. .apis(RequestHandlerSelectors.any()).paths(PathSelectors.any()).build();
  16. }
  17. public ApiInfo apiInfo(){
  18. return new ApiInfoBuilder().build();
  19. }
  20. }

带tokenr的配置类
  1. import org.springframework.context.annotation.Bean;
  2. import org.springframework.context.annotation.Configuration;
  3. import springfox.documentation.builders.ApiInfoBuilder;
  4. import springfox.documentation.builders.ParameterBuilder;
  5. import springfox.documentation.builders.PathSelectors;
  6. import springfox.documentation.builders.RequestHandlerSelectors;
  7. import springfox.documentation.schema.ModelRef;
  8. import springfox.documentation.service.ApiInfo;
  9. import springfox.documentation.service.Parameter;
  10. import springfox.documentation.spi.DocumentationType;
  11. import springfox.documentation.spring.web.plugins.Docket;
  12. import springfox.documentation.swagger2.annotations.EnableSwagger2;
  13. import java.util.ArrayList;
  14. import java.util.List;
  15. @Configuration
  16. @EnableSwagger2
  17. public class SwaggerConfig {
  18. // @Bean
  19. // public Docket createRestApi(){
  20. // return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select()
  21. // .apis(RequestHandlerSelectors.any()).paths(PathSelectors.any()).build();
  22. // }
  23. @Bean
  24. public Docket createRestApi(){
  25. // 添加请求参数,我们这里把token作为请求头部参数传入后端
  26. ParameterBuilder parameterBuilder = new ParameterBuilder();
  27. List<Parameter> parameters = new ArrayList<Parameter>();
  28. parameterBuilder.name("token").description("令牌")
  29. .modelRef(new ModelRef("string")).parameterType("header").required(false).build();
  30. parameters.add(parameterBuilder.build());
  31. return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select()
  32. .apis(RequestHandlerSelectors.any()).paths(PathSelectors.any())
  33. .build().globalOperationParameters(parameters);
  34. }
  35. public ApiInfo apiInfo() {
  36. return new ApiInfoBuilder().build();
  37. }
  38. }

测试

http://localhost:8002/swagger-ui.html