You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SpringBoot中springdoc-openapi自定义Swagger标题等信息的方法

在springdoc-openapi中自定义Swagger文档信息

要访问Swagger UI,添加以下Maven依赖即可:

<dependency>
      <groupId>org.springdoc</groupId>
      <artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
      <version>2.6.0</version>
</dependency>

在springdoc-openapi里,不需要Springfox的Docket,而是通过创建OpenAPI类型的Bean来实现文档信息的自定义,具体配置方式如下:

基础文档信息自定义

创建一个配置类,定义OpenAPI Bean就能设置标题、描述、版本、联系人等核心信息:

import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Contact;
import io.swagger.v3.oas.models.info.Info;
import io.swagger.v3.oas.models.info.License;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class OpenApiConfig {

    @Bean
    public OpenAPI customOpenAPI() {
        return new OpenAPI()
                .info(new Info()
                        .title("电商平台API文档")
                        .description("涵盖用户、订单、商品全业务流程的RESTful接口说明")
                        .version("v1.5.0")
                        .contact(new Contact()
                                .name("电商技术组")
                                .email("dev@ecommerce.com"))
                        .license(new License()
                                .name("MIT License")
                                .url("https://opensource.org/licenses/MIT")));
    }
}

拓展配置:多环境服务器地址

如果需要给文档添加不同环境的服务器地址(比如开发、生产),直接在OpenAPI里追加Server配置即可:

import io.swagger.v3.oas.models.servers.Server;
// 其他导入同上

@Configuration
public class OpenApiConfig {

    @Bean
    public OpenAPI customOpenAPI() {
        // 开发环境服务器
        Server devServer = new Server();
        devServer.setUrl("http://localhost:8080");
        devServer.setDescription("开发环境 - 本地调试用");

        // 生产环境服务器
        Server prodServer = new Server();
        prodServer.setUrl("https://api.ecommerce.com");
        prodServer.setDescription("生产环境 - 正式接口地址");

        return new OpenAPI()
                .addServersItem(devServer)
                .addServersItem(prodServer)
                .info(new Info()
                        .title("电商平台API文档")
                        .version("v1.5.0"));
    }
}

springdoc-openapi完全贴合OpenAPI规范,用OpenAPI及其内部的模型类(Info、Contact等)替代了Springfox的Docket,所有你之前用Docket实现的自定义操作,都能通过这种方式完成。

内容的提问来源于stack exchange,提问作者Music

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 07:19:51