Swagger
配置信息
导入坐标
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>3.0.2</version>
</dependency>
配置参数(基本固定写法)
1、编写mvc配置类信息
@Configuration
@Slf4j
@EnableSwagger2
@EnableKnife4j
public class WebMvcConfig implements WebMvcConfigurer {
/**
* 配置静态资源映射
*
* @param registry
*/
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("doc.html", "swagger-ui.html")
.addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**")
.addResourceLocations("classpath:/META-INF/resources/webjars/");
}
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new LoginCheckInterceptor())
.addPathPatterns("/**")
.excludePathPatterns(
"/doc.html",
"/webjars/**",
"/swagger-resources/**",
"/v2/api-docs"
);
}
/**
* 定义Swagger 和 Knife4j的配置信息
*/
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("com.solider.reggie.controller"))
.paths(PathSelectors.any())
.build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("瑞吉外卖")
.version("1.0")
.description("瑞吉外卖接口文档")
.build();
}
}
2、在yml文件中加入下列配置
spring:
mvc:
pathmatch:
matching-strategy: ant_path_matcher
常用注解
注解 | 说明 |
---|---|
@Api |
用于请求的类上,表示对类的说明 |
@ApiModel |
通常用于实体类上,表示返回响应数据的信息 |
@ApiModelProperty |
用于属性上,描述响应类的属性 |
@ApiOperation |
用于请求方法上,说明方法的用途、作用 |
@ApilmplicitParams |
用于请求方法上,表示一组参数说明 |
@ApilmplicitParam |
用在@ApilmplicitParams 注解中,指定一个请求参数的各个方面 |