SwaggerConfig.java 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. package com.yihu.jw.config;
  2. import com.yihu.jw.restmodel.base.BaseContants;
  3. import org.springframework.context.annotation.Bean;
  4. import org.springframework.context.annotation.ComponentScan;
  5. import org.springframework.context.annotation.Configuration;
  6. import springfox.documentation.service.ApiInfo;
  7. import springfox.documentation.spi.DocumentationType;
  8. import springfox.documentation.spring.web.plugins.Docket;
  9. import springfox.documentation.swagger2.annotations.EnableSwagger2;
  10. import static com.google.common.base.Predicates.or;
  11. import static springfox.documentation.builders.PathSelectors.regex;
  12. @Configuration
  13. @EnableSwagger2
  14. @ComponentScan("com.yihu.jw.*.controller")
  15. public class SwaggerConfig {
  16. public static final String PUBLIC_API = "Default";
  17. @Bean
  18. public Docket publicAPI() {
  19. return new Docket(DocumentationType.SWAGGER_2)
  20. .groupName(PUBLIC_API)
  21. .useDefaultResponseMessages(false)
  22. .forCodeGeneration(false)
  23. .pathMapping("/")
  24. .select()
  25. .paths(or(
  26. regex("/patient/.*"),
  27. regex("/"+ BaseContants.Function.api_common+"/.*")))
  28. .build()
  29. .apiInfo(publicApiInfo());
  30. }
  31. private ApiInfo publicApiInfo() {
  32. ApiInfo apiInfo = new ApiInfo("基卫2.0API",
  33. "基卫2.0API,提供基础卫生相关服务。",
  34. "1.0",
  35. "No terms of service",
  36. "wenfujian@jkzl.com",
  37. "The Apache License, Version 2.0",
  38. "http://www.apache.org/licenses/LICENSE-2.0.html"
  39. );
  40. return apiInfo;
  41. }
  42. }