Spring Boot Starter Swagger 使用教程

Spring Boot Starter Swagger 使用教程

spring-boot-starter-swagger自制spring boot starter for swagger 2.x,来试试吧,很好用哦~项目地址:https://gitcode.com/gh_mirrors/sp/spring-boot-starter-swagger

1. 项目的目录结构及介绍

目录结构

spring-boot-starter-swagger/
├── src/
│   ├── main/
│   │   ├── java/
│   │   │   └── com/
│   │   │       └── spring4all/
│   │   │           └── swagger/
│   │   │               ├── SwaggerAutoConfiguration.java
│   │   │               ├── SwaggerProperties.java
│   │   │               └── SwaggerProperties.java
│   │   └── resources/
│   │       └── META-INF/
│   │           └── spring.factories
│   └── test/
│       └── java/
│           └── com/
│               └── spring4all/
│                   └── swagger/
│                       └── SwaggerAutoConfigurationTest.java
├── pom.xml
└── README.md

介绍

  • src/main/java/com/spring4all/swagger/:包含主要的配置类和属性类。
    • SwaggerAutoConfiguration.java:自动配置类,用于配置Swagger。
    • SwaggerProperties.java:属性类,用于定义Swagger的配置属性。
  • src/main/resources/META-INF/spring.factories:Spring Boot自动配置的入口文件。
  • src/test/java/com/spring4all/swagger/:包含测试类。
  • pom.xml:Maven项目的配置文件。
  • README.md:项目的说明文档。

2. 项目的启动文件介绍

启动文件

  • SwaggerAutoConfiguration.java
    • 该文件是项目的核心启动配置文件,利用Spring Boot的自动配置特性来实现Swagger的快速集成。
    • 通过@Configuration注解标记为配置类。
    • 通过@EnableSwagger2注解启用Swagger2。
    • 通过@ConditionalOnProperty注解根据配置属性决定是否启用Swagger。

代码示例

@Configuration
@EnableSwagger2
@ConditionalOnProperty(name = "swagger.enabled", matchIfMissing = true)
public class SwaggerAutoConfiguration {

    @Autowired
    private SwaggerProperties swaggerProperties;

    @Bean
    public Docket api() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage(swaggerProperties.getBasePackage()))
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title(swaggerProperties.getTitle())
                .description(swaggerProperties.getDescription())
                .version(swaggerProperties.getVersion())
                .license(swaggerProperties.getLicense())
                .licenseUrl(swaggerProperties.getLicenseUrl())
                .build();
    }
}

3. 项目的配置文件介绍

配置文件

  • application.propertiesapplication.yml
    • 在Spring Boot项目的配置文件中,可以配置Swagger的相关属性。

配置示例

# swagger配置
swagger.enabled=true
swagger.title=对外开放接口API文档
swagger.description=HTTP对外开放接口
swagger.version=1.0.0
swagger.license=Apache License Version 2.0
swagger.licenseUrl=https://www.apache.org/licenses/LICENSE-2.0.html

配置属性说明

  • swagger.enabled:是否启用Swagger,默认为true
  • swagger.title:API文档的标题。
  • swagger.description:API文档的描述。
  • swagger.version:API文档的版本。
  • swagger.license:API文档的许可证。
  • swagger.licenseUrl:API文档许可证的URL。

通过以上配置,可以灵活地控制Swagger的启用状态和文档的展示内容。

spring-boot-starter-swagger自制spring boot starter for swagger 2.x,来试试吧,很好用哦~项目地址:https://gitcode.com/gh_mirrors/sp/spring-boot-starter-swagger

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值