目录
我的项目使用gradle管理依赖的
第一步:引入依赖
implementation 'io.springfox:springfox-boot-starter:3.0.0'
maven引入依赖
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>
第二步:yml配置文件添加一下内容
spring: mvc: pathmatch: matching-strategy: ant_path_matcher
第三步:添加SwaggerConfig配置类
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.oas.annotations.EnableOpenApi;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
/**
* @author song
*/
@Configuration
@EnableOpenApi
public class SwaggerConfig {
@Bean
public Docket docket(){
return new Docket(DocumentationType.OAS_30)
/*配置Swagger信息*/
.apiInfo(apiInfo())
/*是否启动Swagger false浏览器中无法访问Swagger*/
.enable(true)
.select()
/* apis():指定扫描的接口
* RequestHandlerSelectors:配置要扫描接口的方式
* basePackage:指定要扫描的包
* any:扫面全部
* none:不扫描
* withClassAnnotation:扫描类上的注解(参数是类上注解的class对象)
* withMethodAnnotation:扫描方法上的注解(参数是方法上的注解的class对象)
*/
.apis(RequestHandlerSelectors.basePackage("com.boyin.css.css.web.controller"))
/**
* paths():过滤路径
* PathSelectors:配置过滤的路径
* any:过滤全部路径
* none:不过滤路径
* ant:过滤指定路径:按照按照Spring的AntPathMatcher提供的match方法进行匹配
* regex:过滤指定路径:按照String的matches方法进行匹配
*/
.paths(PathSelectors.any())
.build();
}
/**
*
* @return
*/
@Bean
public ApiInfo apiInfo(){
return new ApiInfoBuilder()
.title("中国通信工业协会网格化分会接口文档")
.description("协会接口文档")
.contact(new Contact("协会","http://www.cciagb.com","song"))
.version("1.0.0")
.build();
}
}
第四步:启动类添加注解
@EnableDiscoveryClient
第五步:Controller层类添加注解
第六步:实体类添加注解
第七步:启动项目访问Swagger
http://localhost:8080/swagger-ui/index.html