swagger3的简单使用

x33g5p2x  于2022-07-20 转载在 其他  
字(2.0k)|赞(0)|评价(0)|浏览(543)

所需依赖

  1. <!--swagger3的配置-->
  2. <dependency>
  3. <groupId>io.springfox</groupId>
  4. <artifactId>springfox-boot-starter</artifactId>
  5. <version>3.0.0</version>
  6. </dependency>

所需配置

  1. spring:
  2. mvc:
  3. pathmatch:
  4. matching-strategy: ant_path_matcher

该配置主要解决spring-boot-starterSpringBoot2.6以上版本兼容问题,SpringBoot2.6版本修改了路径匹配规则导致springfox会报错,因此需要调整mvc路径匹配策略

自定义JavaConfig

  1. import org.springframework.context.annotation.Bean;
  2. import org.springframework.context.annotation.Configuration;
  3. import org.springframework.web.bind.annotation.RestController;
  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.service.Contact;
  9. import springfox.documentation.spi.DocumentationType;
  10. import springfox.documentation.spring.web.plugins.Docket;
  11. @Configuration
  12. public class SwaggerConfig {
  13. @Bean
  14. public Docket createRestApi() {
  15. return new Docket(DocumentationType.SWAGGER_2)
  16. // 分组名称
  17. .groupName("aa")
  18. // api描述信息
  19. .apiInfo(apiInfo())
  20. // 扫描配置 select
  21. .select()
  22. .paths(PathSelectors.any())
  23. // 设置只扫描@RestController
  24. .apis(RequestHandlerSelectors.withClassAnnotation(RestController.class))
  25. .build();
  26. }
  27. private ApiInfo apiInfo() {
  28. return new ApiInfoBuilder().title("标题:swagger3初测试").termsOfServiceUrl("https://blog.csdn.net/qq_45464560?spm=1018.2226.3001.5343")
  29. .description("API接口")
  30. .contact(new Contact("作者:coderzpw","https://blog.csdn.net/qq_45464560?spm=1018.2226.3001.5343",""))
  31. .version("3.0").build();
  32. }
  33. }

添加控制层web接口

接下来我简单写一个web接口

访问swagger的UI界面

接下来启动项目,然后访问 http://localhost:8080/swagger-ui/ 便会到达swagger的UI界面

添加knife4j接口显示文档

如嫌弃swagger的界面太丑,我们可以选择knife4j接口文档界面
需要添加如下依赖:

  1. <dependency>
  2. <groupId>com.github.xiaoymin</groupId>
  3. <artifactId>knife4j-spring-boot-starter</artifactId>
  4. <version>3.0.3</version>
  5. </dependency>

访问knife4j的UI界面

访问 http://localhost:8080/doc.html 即可

相关文章