SwagerrConfiguration.java 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. package com.gyee.health.config;
  2. import org.springframework.context.annotation.Bean;
  3. import org.springframework.context.annotation.Configuration;
  4. import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
  5. import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
  6. import springfox.documentation.builders.ApiInfoBuilder;
  7. import springfox.documentation.builders.PathSelectors;
  8. import springfox.documentation.builders.RequestHandlerSelectors;
  9. import springfox.documentation.service.ApiInfo;
  10. import springfox.documentation.spi.DocumentationType;
  11. import springfox.documentation.spring.web.plugins.Docket;
  12. import springfox.documentation.swagger2.annotations.EnableSwagger2;
  13. /**
  14. * Swagger 配置文件
  15. * @ClassName: Swagger
  16. * @Description: 配置文件
  17. * @author gyee
  18. * @date 2022年11月10日
  19. *
  20. */
  21. @Configuration(value="true")
  22. @EnableSwagger2 //启动swagger注解 启动服务,浏览器输入"http://localhost:8080/swagger-ui.html"
  23. public class SwagerrConfiguration implements WebMvcConfigurer {
  24. @Bean
  25. public Docket createRestApi() {
  26. return new Docket(DocumentationType.SWAGGER_2)
  27. //.host("")
  28. // 用来创建该API的基本信息,展示在文档的页面中(自定义展示的信息)
  29. .apiInfo(apiInfo())
  30. // 设置哪些接口暴露给Swagger展示
  31. .select()
  32. // 扫描所有有注解的api,用这种方式更灵活
  33. .apis(RequestHandlerSelectors.basePackage("com.gyee.runeconomy"))
  34. // 扫描指定包中的swagger注解
  35. //.apis(RequestHandlerSelectors.basePackage("com.gyee.frame.controller"))
  36. // 扫描所有 .apis(RequestHandlerSelectors.any())
  37. .paths(PathSelectors.any())
  38. .build();
  39. }
  40. private ApiInfo apiInfo() {
  41. return new ApiInfoBuilder()
  42. //设置标题
  43. .title("后台管理API文档")
  44. //描述
  45. .description("后台管理项目")
  46. //作者信息
  47. //.contact(new Contact(v2Config.getName(), null, V2Config.getEmail_account()))
  48. //服务条款URL
  49. .termsOfServiceUrl("")
  50. //版本
  51. .version("版本号:1.0")
  52. .build();
  53. }
  54. @Override
  55. public void addResourceHandlers(ResourceHandlerRegistry registry) {
  56. // 解决静态资源无法访问
  57. registry.addResourceHandler("/**").addResourceLocations("classpath:/static/");
  58. // 解决swagger无法访问
  59. registry.addResourceHandler("/swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/");
  60. // 解决swagger的js文件无法访问
  61. registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
  62. }
  63. }