SwaggerConfig.java 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. package com.yihu.jw.config;
  2. import org.springframework.context.annotation.Bean;
  3. import org.springframework.context.annotation.ComponentScan;
  4. import org.springframework.context.annotation.Configuration;
  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. @ComponentScan("com.yihu.jw.controller.**")
  14. public class SwaggerConfig {
  15. public static final String base_API = "base";
  16. public static final String wlyy_API = "wlyy";
  17. public static final String login_API = "login";
  18. public static final String iot_API = "iot";
  19. @Bean
  20. public Docket baseAPI() {
  21. return new Docket(DocumentationType.SWAGGER_2)
  22. .groupName(base_API)
  23. .useDefaultResponseMessages(false)
  24. .apiInfo(baseApiInfo())
  25. .select()
  26. .apis(RequestHandlerSelectors.basePackage("com.yihu.jw.controller.base"))
  27. .paths(PathSelectors.any())
  28. .build();
  29. }
  30. private ApiInfo baseApiInfo() {
  31. ApiInfo apiInfo = new ApiInfo("基卫2.0API",
  32. "基卫2.0API,提供基础卫生相关服务。",
  33. "1.0",
  34. "No terms of service",
  35. "wenfujian@jkzl.com",
  36. "The Apache License, Version 2.0",
  37. "http://www.apache.org/licenses/LICENSE-2.0.html"
  38. );
  39. return apiInfo;
  40. }
  41. @Bean
  42. public Docket wlyyAPI() {
  43. return new Docket(DocumentationType.SWAGGER_2)
  44. .groupName(wlyy_API)
  45. .useDefaultResponseMessages(false)
  46. .apiInfo(wlyyApiInfo())
  47. .select()
  48. .apis(RequestHandlerSelectors.basePackage("com.yihu.jw.controller.wlyy"))
  49. .paths(PathSelectors.any())
  50. .build();
  51. }
  52. private ApiInfo wlyyApiInfo() {
  53. ApiInfo apiInfo = new ApiInfo("基卫2.0API",
  54. "基卫2.0API,提供基础卫生相关服务。",
  55. "1.0",
  56. "No terms of service",
  57. "wenfujian@jkzl.com",
  58. "The Apache License, Version 2.0",
  59. "http://www.apache.org/licenses/LICENSE-2.0.html"
  60. );
  61. return apiInfo;
  62. }
  63. @Bean
  64. public Docket loginAPI() {
  65. return new Docket(DocumentationType.SWAGGER_2)
  66. .groupName(login_API)
  67. .useDefaultResponseMessages(false)
  68. .apiInfo(loginApiInfo())
  69. .select()
  70. .apis(RequestHandlerSelectors.basePackage("com.yihu.jw.controller.login"))
  71. .paths(PathSelectors.any())
  72. .build();
  73. }
  74. private ApiInfo loginApiInfo() {
  75. ApiInfo apiInfo = new ApiInfo("基卫2.0API",
  76. "基卫2.0API,提供基础卫生相关服务。",
  77. "1.0",
  78. "No terms of service",
  79. "wenfujian@jkzl.com",
  80. "The Apache License, Version 2.0",
  81. "http://www.apache.org/licenses/LICENSE-2.0.html"
  82. );
  83. return apiInfo;
  84. }
  85. @Bean
  86. public Docket iotAPI() {
  87. return new Docket(DocumentationType.SWAGGER_2)
  88. .groupName(iot_API)
  89. .useDefaultResponseMessages(false)
  90. .apiInfo(iotApiInfo())
  91. .select()
  92. .apis(RequestHandlerSelectors.basePackage("com.yihu.jw.controller.iot"))
  93. .paths(PathSelectors.any())
  94. .build();
  95. }
  96. private ApiInfo iotApiInfo() {
  97. ApiInfo apiInfo = new ApiInfo("基卫2.0API",
  98. "基卫2.0API,提供物联网相关服务。",
  99. "1.0",
  100. "No terms of service",
  101. "wenfujian@jkzl.com",
  102. "The Apache License, Version 2.0",
  103. "http://www.apache.org/licenses/LICENSE-2.0.html"
  104. );
  105. return apiInfo;
  106. }
  107. }