在先後端分離,寫接口文檔較繁瑣。利用 Swagger2咱們能夠作到:html
上大圖:java
有這麼多的好處,還不趕忙下手?話說,我就先下手爲強了~~~git
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.8.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2-ui</artifactId>
<version>2.7.0</version>
</dependency>
複製代碼
在Application.java同級下建立Swagger2.github
@Configuration //讓spring加載此類配置
@EnableSwagger2 //啓動swagger2
public class Swagger2 {
@Bean
public Docket createRestApi(){
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("com.sugar.springbootlearning"))
.paths(PathSelectors.any())
.build();
}
private ApiInfo apiInfo(){
return new ApiInfoBuilder()
.title("sugar xxx project RESTful APIs")
.description("see more")
.termsOfServiceUrl("https://github.com/yangshuting1")
.contact("sugar")
.version("1.0")
.build();
}
}
複製代碼
因爲爲了有更好的交互體驗,咱們要拿出咱們法寶:spring
@RestController //@RestController: 能夠返回json 相比較於@Controller
@RequestMapping("/product") // @RequestMapping :配置URL映射
public class ProductController {
/** * date: 2018-05-11 * author: yangshuting * */
@ApiOperation("建立產品")
@RequestMapping(value = "", method = RequestMethod.POST)
public boolean createProduct(@RequestBody CreateProductOption CreateProductOption){
return true;
}
@ApiOperation("獲取產品")
@RequestMapping(value = "/{productId}", method = RequestMethod.GET)
public Product getProduct(@PathVariable long productId){
Product product = new Product();
product.setId(productId);
product.setName("筆記本");
product.setDeleted(0);
return product;
}
}
複製代碼
以後運行spring boot,在瀏覽器頁面輸入:http://localhost:8080/swagger-ui.html就能夠出來效果了。json
API 詳情圖以下: 後端
能夠進行查看和輸入參數進行try,是否是很方便吶!!!代碼示例:sugar2-3api