java spring boot 集成 swagger
1.pom.xml文件
<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>
2.添加swagger配置类
package myblogadmin.myblogs.Util;
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.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration
@EnableSwagger2
public class SwaggerConfig {
public Docket getUserDocket(){
ApiInfo apiInfo=new ApiInfoBuilder()
.title("博客管理")
.description("博客接口")
.version("1.0.1")
.contact("sxy")
.build();
return new Docket(DocumentationType.SWAGGER_2)//文档类型(swagger2)
.apiInfo(apiInfo)//设置包含在json ResourceListing响应中的api元信息
.select()//启动用于api选择的构建器
.apis(RequestHandlerSelectors.basePackage("myblogadmin.myblogs.Controller"))//扫描接口的包,也就是写接口的包
.paths(PathSelectors.any())//路径过滤器(扫描所有路径)
.build();
}
}
3.访问启动端口 localhost:端口/swagger-ui.html
4.注释注解
注解 | 使用的地方 | 用途 |
---|---|---|
@Api | 类/接口 | 描述类/接口主要用途 |
@ApiOperation | 方法 | 描述方法的用途 |
@ApiImplicitParam | 方法 | 用于描述接口的非对象参数 |
@ApiImplicitParams | 方法 | 用于描述接口的非对象参数集 |
@ApiIgnore | 类/方法/参数 | Swagger 文档不会显示拥有该注解的接口 |
@ApiModel | 参数实体类 | 可设置接口相关实体的描述 |
ApiModelProperty | 参数实体类属性 | 可设置实体属性的相关描述 |