一、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>
需要注意的是:springfox-swagger2和springfox-swagger-ui的版本必须要一致,否则会出现(我也不知道的问题哦)
二、常用注解
- @Api(tags="xxx") 写在Controller头上,可以理解为给Controller起个名。
- @ApiOperation("xxx") 写在方法的头上,可以理解为给方法起个名。
- @ApiImplicitParams
({
@ApiImplicitParam(name="xxx",value="xxx",required=true,dataType="String",paramType="query")
})
其中,name和传入参数的名字对应,value是参数的描述,后面的是必填,参数类型,操作类型,所以,这种注解一般在使用@RequestParam注解方式传参时使用。
4. @ApiModel(description="xxx") 写在实体类的头上,可以理解为给实体类起个名。
5. @ApiModelProperty(value = "xxx",required=true) 写在实体类中每个属性的头上,可以理解为给每个属性起个名。
三、SwaggerConfig文件的配置:(附上代码)
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select()
.apis(RequestHandlerSelectors.any()).paths(PathSelectors.any()).build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder().title("标题名字")
.description("描述")
.version("1.0").build();
}
}