一、添加依赖
首先添加 Swagger 基础依赖:
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
然后添加 Swagger 的 UI 增强依赖:
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>swagger-bootstrap-ui</artifactId>
<version>1.9.6</version>
</dependency>
二、编写配置文件
配置类代码如下:
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.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
/**
* Swagger 配置
*
* @author ZhengNC
* @date 2020/7/27 9:04
*/
@Configuration
@EnableSwagger2
public class SwaggerConfiguration {
@Bean
public Docket docket(){
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
//设置要扫描的接口所在的包
.apis(RequestHandlerSelectors.basePackage("com.qixi.emp"))
.paths(PathSelectors.any())
.build();
}
/**
* API文档信息
*
* @return
*/
private ApiInfo apiInfo(){
return new ApiInfoBuilder()
//文档名
.title("Qixi Emp RESTful APIs")
//简介
.description("Qixi Emp RESTful APIs doc")
//作者信息
.contact(new Contact("七夕", "www.qixi.com", "qixi@163.com"))
//版本
.version("1.0")
.build();
}
}
三、访问地址
-
swagger-bootstrap-ui 的默认访问地址为: http://{host}:{port}/doc.html
-
springfox-swagger2 提供的两个数据获取接口:
- 元数据接口地址:http://{host}:{port}/v2/api-docs
- 分组信息接口地址:http://{host}:{port}/swagger-resources
-
swagger-bootstrap-ui 提供的增强接口地址:http://{host}:{port}/v2/api-docs-ext
四、注意事项
如果项目中配置有拦截器(如权限管理),需要放开第三步的接口地址权限。