弹簧引导集成springfox-swagger2构建restful API的方法教程

  

  

之前跟大家分享了Spring MVC集成springfox-swagger2构建基于rest的API,简单写了如何在springmvc中集成swagger2。这边记录下在springboot中如何集成swagger2。其实使用基本相同。
  

  

  

首先还是引用相关jar包。我使用的maven在pom.xml中引用相关依赖(原来我使用的是2.2.0的,现在使用测试盒框的):

        & lt; dependency>   & lt; groupId> io.springfox   & lt; artifactId> springfox-swagger2   & lt; version> 2.4.0   & lt;/dependency>   & lt; dependency>   & lt; groupId> io.springfox   & lt; artifactId> springfox-swagger-ui   & lt; version> 2.4.0   & lt;/dependency>      

第二步就是创建大摇大摆的配置类:
  

  

这个配置类和springmvc的写法完全一致。为了区分我又重命名一个。

        包com.xingguo.springboot;      进口org.springframework.context.annotation.Bean;   进口org.springframework.context.annotation.Configuration;      进口springfox.documentation.builders.ApiInfoBuilder;   进口springfox.documentation.builders.PathSelectors;   进口springfox.documentation.builders.RequestHandlerSelectors;   进口springfox.documentation.service.ApiInfo;   进口springfox.documentation.service.Contact;   进口springfox.documentation.spi.DocumentationType;   进口springfox.documentation.spring.web.plugins.Docket;   进口springfox.documentation.swagger2.annotations.EnableSwagger2;      @ configuration   @EnableSwagger2   公开课Swagger2Configuration {      @ bean   公共摘要buildDocket () {   返回新摘要(DocumentationType.SWAGGER_2)   .apiInfo (buildApiInf ())   .select ()   .apis (RequestHandlerSelectors.basePackage (“com.xingguo.springboot.controller”))   .paths (PathSelectors.any ())   .build ();   }      私人ApiInfo buildApiInf () {   返回新ApiInfoBuilder ()   .title(“兴国大标题”)   .description (“springboot swagger2”)   .termsOfServiceUrl (" http://blog.csdn.net/u014231523网址链接”)   .contact(新联系人(“diaoxingguo”、“http://blog.csdn.net/u014231523”、“diaoxingguo@163.com”))   .build ();      }      }      

在原来2.2.0的版本中使用<代码>新ApiInfo() 的方法已经过时,使用<代码>新ApiInfoBuilder() 进行构造,需要什么参数就添加什么参数。当然也可以什么都添加。如:

        私人ApiInfo buildApiInfo () {   返回新ApiInfoBuilder () .build ();   }      

那么页面显示的效果如图:
  

  

使用新的ApiInfoBuilder () .build ();
  弹簧引导集成springfox-swagger2构建restful API的方法教程

  

添加属性:
  

  

春天引导集成springfox-swagger2构建restful API的方法教程

  

点击<代码> ApiInfoBuilder。Java代码的源码可以看到相关方法使用。
  

  

第三步就是在自己的控制器添加相关的注解:

  

原来使用在类上使用<代码> @ controller> @RestController> @ResponseBody> @RestController>         @Target (ElementType.TYPE)   @Retention (RetentionPolicy.RUNTIME)   @Documented   @ controller   @ResponseBody   公共@ interface RestController {/* *   *可能表明一个建议值为一个逻辑组件名称,   *变成一个Spring bean的一个组件。   * @return建议组件名称,如果有的话   * @since 4.0.1   */字符串值()默认””;      }      

<强>常用的注解如下:
  

  

,,,,,- <代码> @Api() 用于类名
  

  

,,,,,- <代码> @ApiOperation() 用于方法名
  

  

,,,,,- <代码> @ApiParam() 用于参数说明
  

  

,,,,,- <代码> @ApiModel() 用于实体类
  

  

,,,,,——<代码> @ApiModelPropert y用于实体类属性
  

  

更加详细的含义可以参考官方说明wiki
  

弹簧引导集成springfox-swagger2构建restful API的方法教程