Swagger
1、简介
- 号称世界上最流行的Api框架
- RestFul Api文档在线自动生成工具=>Api文档与Api定义同步更新
- 直接运行,可以在新测试API接口
- 支持多种语言
1.2、实际使用
在项目中使用Swagger需要Springbox
- swagger2
- ui
2、SpringBoot继承Swagger
-
导入依赖
<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> </dependency>
<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.2</version> </dependency>
-
配置config
@Configuration //表明是配置类 @EnableSwagger2 //开启Swagger public class swaggerConfig { }
-
测试运行
localhost:8080/swagger-ui.html
-
配置Swagger
-
Swagger的bean实例
Docket
@Configuration //表明是配置类 @EnableSwagger2 //开启Swagger public class swaggerConfig { //配置Swagger的Docket的bean实例 @Bean public Docket docket(){ return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()); } //配置Swagger信息==apiInfo private ApiInfo apiInfo(){ //作者信息 Contact contact = new Contact("qew", "localhost:8080/", "123@132.cn"); return new ApiInfo( "标题名", "简介", "版本号", "服务url地址", contact, "Apache 2.0", "http://www.apache.org/licenses/LICENSE-2.0", new ArrayList()); } }
-
Swagger配置扫描接口
Docket.select()
//配置Swagger的Docket的bean实例 @Bean public Docket docket(){ return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select() //RequestHandlerSelectors 配置要扫描接口的方式 //.basePackage("com.demo") 指定要扫描的包 //.any() 扫描全部 //.none() 都不扫描 //.withClassAnnotation() 扫描类上的注解 //.withMethodAnnotation() 扫描方法上的注解 .apis(RequestHandlerSelectors.withMethodAnnotation(RestController.class)) //paths() 过滤扫描路径 .paths(PathSelectors.ant("/user/**")) .build(); }
-
配置是否启动Sagger
.enable(false)
默认开启(true)
-