SpringBoot整合swagger2,生成API文件
阿新 • • 發佈:2018-12-19
1、新增依賴
<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> </dependency> <!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger-ui --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.2</version> </dependency>
2、編寫swagger配置類
package com.zhaoyan.demo; import org.springframework.context.annotation.Bean; 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; @Configuration public class SwaggerConf { public Docket createRestApi(){ Docket docket = new Docket(DocumentationType.SWAGGER_2); docket.apiInfo(apiInfo()); docket.select(). apis(RequestHandlerSelectors.basePackage("com.zhaoyan.demo")) .paths(PathSelectors.any()).build(); return docket; } private ApiInfo apiInfo(){ return new ApiInfoBuilder() .title("Api文件")//標題 .description("restful風格介面API")//描述 .version("1.0")//版本 .contact("zhaoyan") .build(); } }
3、開啟Swagger2
package com.zhaoyan.demo; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import springfox.documentation.swagger2.annotations.EnableSwagger2; @EnableSwagger2 @SpringBootApplication public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } }
4、restful介面
package com.zhaoyan.demo.random;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
@Api(tags = "獲取隨機數")
@RestController
public class RandomController {
@ApiOperation("隨機數")
@RequestMapping(value = "/random",method = RequestMethod.GET)
public String getRandom(){
//Math.random()方法可以隨機產生一個[0.0,1.0]區間的雙精度的浮點數。
Double random = Math.random();
return String.valueOf(Math.random());
}
}