SpringBoot Swagger 2に基づいてAPI文書を構築するプロセス解析


一、依存を追加

<!--SpringBoot  Swagger2  API     -->
    <dependency>
      <groupId>io.springfox</groupId>
      <artifactId>springfox-swagger2</artifactId>
      <version>2.7.0</version>
    </dependency>

    <dependency>
      <groupId>io.springfox</groupId>
      <artifactId>springfox-swagger-ui</artifactId>
      <version>2.7.0</version>
    </dependency>
二、Swagger 2配置類の作成

package com.offcn.config;

import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@Configuration//          ,   spring  xml    
@EnableSwagger2 //      
public class SwaggerConfig {

  //1.   api      
  private ApiInfo apiInfo() {
    return new ApiInfoBuilder()
        .title("Spring Boot   Swagger2  RESTful APIs")
        .description("   ")
        .termsOfServiceUrl("http://www.ujiuye.com/")
        .contact("    ")
        .version("1.0")
        .build();
  }

  //        
  public Docket createRestApi() {
    return new Docket(DocumentationType.SWAGGER_2)
        .apiInfo(apiInfo())
        .select()
        .apis(RequestHandlerSelectors.basePackage("com.offcn.controller"))
        .paths(PathSelectors.any())
        .build();
  }
}
三、Controllerを修正して文書の注釈を追加する。
@AppliOperationの注釈によってAPIに説明を追加します。
通過するApiImplicitParams@ApiImplicitParamパラメータにコメントを追加します。

package com.offcn.controller;

import com.offcn.dao.UserDao;
import com.offcn.entity.User;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RequestMapping("/rest")
@RestController
public class RestFulController {

  @Autowired
  private UserDao userDao;

  @GetMapping("/getUserById")
  @ApiOperation(value="    id    ", notes="  id      ")
  @ApiImplicitParams({
      @ApiImplicitParam(name = "id", value = "  ID", required = true, dataType = "Integer"),
  })
  public User getUserById(Integer id){
    User user = userDao.getOne(id);
    return user;
  }

  @DeleteMapping("/del")
  @ApiOperation(value="    id    ", notes="  id      ")
  @ApiImplicitParams({
      @ApiImplicitParam(name = "id", value = "  ID", required = true, dataType = "Integer"),
  })
  public String delUserById(Integer id){
    userDao.deleteById(id);
    return "success";
  }
}

四、Swagger 2文書を確認する。
アイテムを再起動
アクセス:
http://localhost:8080/swagger-ui.
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。