美文网首页
在 Spring Boot 项目中使用 Swagger2 构建

在 Spring Boot 项目中使用 Swagger2 构建

作者: 王睿同学 | 来源:发表于2018-03-23 12:59 被阅读0次
  1. 在 pom.xml 中添加 Swagger2 的相关依赖:
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger2</artifactId>
    <version>2.8.0</version>
    <scope>compile</version>
</dependency>
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger-ui</artifactId>
    <version>2.8.0</version>
    <scope>compile</version>
</dependency>
  1. 创建 Swagger2 配置类:
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.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

/**
 * 使用 Swagger 生成 RESTful API 文档。
 *
 * @author wangrui
 * @date 2018-03-23 11:35:13
 */
@EnableSwagger2
@Configuration
public class SwaggerConfiguration {
    @Bean
    public Docket restApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .groupName("swagger2-demo")
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.swagger2.demo"))
                .paths(PathSelectors.regex("/api/.*"))
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("在 Spring Boot 项目中使用 Swagger2 构建 RESTful API 文档")
                .description("Build RESTful API doc with Swagger 2.")
                .contact("王睿同学")
                .version("1.0.0")
                .build();
    }
}
  1. 使用 @ApiOperation 注解来给 API 增加说明,使用 @ApiImplicitParams@ApiImplicitParam 注解来给参数增加说明。
  2. 启动 Spring Boot 程序,访问:[http://localhost:8080/swagger-ui.html]

相关文章

网友评论

      本文标题:在 Spring Boot 项目中使用 Swagger2 构建

      本文链接:https://www.haomeiwen.com/subject/noztcftx.html