Swagger2.java 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. package com.example.config;
  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.PathSelectors;
  6. import springfox.documentation.builders.RequestHandlerSelectors;
  7. import springfox.documentation.service.ApiInfo;
  8. import springfox.documentation.spi.DocumentationType;
  9. import springfox.documentation.spring.web.plugins.Docket;
  10. import springfox.documentation.swagger2.annotations.EnableSwagger2;
  11. @Configuration
  12. @EnableSwagger2
  13. public class Swagger2 {
  14. /**
  15. * 创建API应用
  16. * apiInfo() 增加API相关信息
  17. * 通过select()函数返回一个ApiSelectorBuilder实例,用来控制哪些接口暴露给Swagger来展现,
  18. * 本例采用指定扫描的包路径来定义指定要建立API的目录。
  19. *
  20. * @return
  21. */
  22. @Bean
  23. public Docket createRestApi() {
  24. return new Docket(DocumentationType.SWAGGER_2)
  25. .apiInfo(apiInfo())
  26. .select()
  27. .apis(RequestHandlerSelectors.basePackage("com.example.controller"))
  28. .paths(PathSelectors.any())
  29. .build();
  30. }
  31. /**
  32. * 创建该API的基本信息(这些基本信息会展现在文档页面中)
  33. * 访问地址:http://项目实际地址/swagger-ui.html
  34. *
  35. * @return
  36. */
  37. private ApiInfo apiInfo() {
  38. return new ApiInfoBuilder()
  39. .title("Spring Boot中使用Swagger2构建RESTful APIs")
  40. .description("更多请关注http://www.baidu.com")
  41. .termsOfServiceUrl("http://www.baidu.com")
  42. .contact("sunf")
  43. .version("1.0")
  44. .build();
  45. }
  46. }