SpringMVC中使用Swagger2整合

 

  • Swagger2是什麼

 

Swagger 是一款RESTFUL接口的文檔在線自動生成+功能測試功能軟件。 
Swagger 是一個規範和完整的框架,用於生成、描述、調用和可視化 RESTful 風格的 Web 服務。整體目標是使客戶端和文件系統做爲服務器以一樣的速度來更新。文件的方法,參數和模型緊密集成到服務器端的代碼,容許API來始終保持同步。Swagger 讓部署管理和使用功能強大的API從未如此簡單。java

  • Swagger2官網

官網地址 git

  • Swagger2的入門教程

    • Swagger2的maven依賴

 1 <!-- 構建Restful API -->
 2             <dependency>
 3                 <groupId>io.springfox</groupId>
 4                 <artifactId>springfox-swagger2</artifactId>
 5                 <version>2.4.0</version>
 6             </dependency>
 7             <dependency>
 8                 <groupId>io.springfox</groupId>
 9                 <artifactId>springfox-swagger-ui</artifactId>
10                 <version>2.4.0</version>
11             </dependency>
    • RestApiConfig的配置

 1 import org.springframework.context.annotation.Bean;
 2 import org.springframework.context.annotation.Configuration;
 3 
 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 import springfox.documentation.swagger2.annotations.EnableSwagger2;
12 
13 @Configuration
14 @EnableSwagger2
15 public class SwaggerConfig {
16     @Bean
17     public Docket createRestApi() {
18         return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select().apis(RequestHandlerSelectors.basePackage("com.robot.controller.api")).paths(PathSelectors.any()).build();
19     }
20 
21     private ApiInfo apiInfo() {
22         return new ApiInfoBuilder().title("SpringMVC中使用Swagger2整合").termsOfServiceUrl("https://git.oschina.net/suntea")
23                 .contact(new Contact("hello", "http://www.cnblogs.com/hjava/", "elvishehai521@163.com")).version("1.0.0").build();
24     }
25 }
    • 在Controller中添加  

 1 @Api(value = "Api控制器")
 2 @Controller
 3 @RequestMapping("/api")
 4 public class ApiConfigController {
 5 
 6     @ApiResponse(code = 200, message = "success", response = Result.class)
 7     @ApiOperation(value = "獲取用戶對象", httpMethod = "GET", response = String.class, notes = "根據用戶名獲取用戶對象")
 8     @RequestMapping(value = "apiGetId", method = RequestMethod.GET, produces = "application/json")
 9     @ResponseBody
10     public Object getId(@ApiParam(name = "userId", required = true, value = "用戶Id") @RequestParam("id") String id) {
11         Result res = new Result();
12         res.setMsg("msg=" + id);
13         res.setSuccess(true);
14         return res;
15     }
16 }
    •   結果

以上就完成了。有問題請留言。web

相關文章
相關標籤/搜索