美文网首页
Java进阶之Swagger工具

Java进阶之Swagger工具

作者: 在error边缘疯狂试探 | 来源:发表于2020-04-20 10:47 被阅读0次

    Swagger简介

    • 前后端分离,主流框架用的是Vue+SpringBoot,前端负责写前端页面,后端写具体的业务,前后端使用json数据进行交互,后端负责把实现好的接口给前端,前端通过接口获得json数据,并渲染给页面,这样就实现了前后端分离,而Swagger就是能够让前后端更好交互的工具。
    • RestFul API文档在线生成工具:API文档与API定义同步更新。

    在SpringBoot项目中使用Swagger2

    • 导入相关依赖
      <dependency>
                <groupId>io.springfox</groupId>
                <artifactId>springfox-swagger2</artifactId>
                <version>2.9.2</version>
            </dependency>
      <dependency>
                <groupId>io.springfox</groupId>
                <artifactId>springfox-swagger-ui</artifactId>
                <version>2.9.2</version>
            </dependency>
    
    • 这个并不是springboot的包(不会自动装配),所以需要我们写配置类进行配置
    @Configuration
    @EnableSwagger2
    public class SwaggerConfig{
        
          // 配置了swagger的docket 的bean实例
         @Bean
        public Docket docket(Enviorment enviorment){
          // 设置swagger要显示的环境,即生产版本下显示,开发版本下关闭
          Profiles profiles = Profiles.of("dev");
          // 通过acceptsProfiles 来判断是否在自己设置的环境中
          boolen flag = enviorment.acceptsProfiles(profiles);
    
          return new Docket(DocumentationType.SWAGGER_2)
                  .apiInfo(apiInfo)
                  .groupName("cwx") // 配置分组的名字
                  .enable(flag);  // 是否启动swagger,true启动,false关闭
                  .select()
      // ResquestHandlerSelectors:配置要扫描接口的方式,basePackage:指定要扫描的包
                  .apis(ResquestHandlerSelectors.basePackage("com.cwx.controller"))
                  .build();
    }
        // 配置swagger 首页的一些信息
        private ApiInfo apiInfo(){
          Contact contact = new Contact("姓名name","URL","email");
          return new ApiInfo(
              "title",
              "description描述",
              "version",
              "url",
               contact,
              "license Apache 2.0",
              "licenseUrl ",
              new ArrayList()
          );      
    }
    }
    

    【总结】:Swagger主要是实现了文档在线实时生产和在线测试。
    【注意点】:在正式发布的时候一定要关闭Swagger,不然就炸了。

    相关文章

      网友评论

          本文标题:Java进阶之Swagger工具

          本文链接:https://www.haomeiwen.com/subject/lgfrihtx.html