要在Spring Boot项目中结合使用Swagger,你需要遵循以下步骤:
在你的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>
请注意,你可能需要根据你的项目需求选择合适的版本。
创建一个新的Java类,例如SwaggerConfig.java
,并添加以下代码:
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
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 api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.basePackage("your.base.package"))
.paths(PathSelectors.any())
.build();
}
}
将your.base.package
替换为你的Spring Boot项目中控制器类的包名。
启动你的Spring Boot应用程序,然后在浏览器中访问以下URL:
http://localhost:8080/swagger-ui.html
你应该能看到Swagger UI界面,其中列出了你的项目中所有可用的API。
你可以根据需要配置更多Swagger选项,例如API信息、全局参数等。以下是一个更详细的配置示例:
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.ParameterBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.schema.ModelRef;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Parameter;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
import java.util.ArrayList;
import java.util.List;
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket api() {
List<Parameter> params = new ArrayList<>();
params.add(new ParameterBuilder()
.name("Authorization")
.description("Access token")
.modelRef(new ModelRef("string"))
.parameterType("header")
.required(false)
.build());
ApiInfo apiInfo = new ApiInfoBuilder()
.title("My API")
.description("My API description")
.version("1.0.0")
.contact("Your Name")
.build();
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo)
.select()
.apis(RequestHandlerSelectors.basePackage("your.base.package"))
.paths(PathSelectors.any())
.build()
.globalOperationParameters(params);
}
}
现在,你已经成功地将Swagger集成到你的Spring Boot项目中。你可以使用Swagger UI来浏览和测试你的API。