对于后台开发人员来说,当写完接口后需要自测的,那么之前测试接口一般会使用postman,随着科技的发展,SpringBoot项目使用起来越来越觉得方便,那么对于这种的项目还有另外一种方式去自测接口,那就是在项目中集成swagger,今天就记录一下自己集成的这个过程
第一步:
引入Swagger的jar包,刷新一下maven
<!-- swagger -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.5.0</version>
</dependency>
<!-- swagger-ui -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.5.0</version>
</dependency>
第二步:配置文件application.properties可以添加swagger.enabled配置控制是否开启
第三步:添加swagger启动类,该类名是随意的,但是如果项目依赖了别的模块或者项目里已经配置了swagger的启动类的话,那么是不需要在加启动类的,同时也不需要在引入第一步中的jar包,直接把你项目中配置的swagger的开关打开即可。
package com.iwhalecloud.dmos.svcability;
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.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 {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select()
.apis(RequestHandlerSelectors.basePackage("com.xxx.controller"))
.paths(PathSelectors.any()).build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder().title("Spring Boot 使用 Swagger2 构建RESTful API").description("API描述").version("1.0").build();
}
}
basePackage为你项目接口的包名
注意:该配置类一般和项目的启动类在同一个目录下
第四步:启动项目,在浏览器中访问http://localhost:端口/项目对应的servlet下的context-path/swagger-ui.html,只要能访问这个就证明集成成功