SpringDoc集成到Springboot

1.Maven引入jar包

复制代码
           <dependency>
                <groupId>org.springdoc</groupId>
                <artifactId>springdoc-openapi-ui</artifactId>
                <version>1.6.14</version> 
            </dependency>

2.新建OpenApiConfig文件,代码如下

复制代码
package com.elane.project.ztt.config;

import io.swagger.v3.oas.annotations.enums.SecuritySchemeIn;
import io.swagger.v3.oas.annotations.enums.SecuritySchemeType;
import io.swagger.v3.oas.annotations.security.SecurityScheme;
import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Info;
import io.swagger.v3.oas.models.security.SecurityRequirement;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

//swagger显示Authorization
//@SecurityScheme(
//        name = "bearerAuth",  // 安全方案的唯一名称
//        type = SecuritySchemeType.HTTP,
//        scheme = "bearer",
//        bearerFormat = "JWT"  // 可选,表明 Token 格式为 JWT
//)
//将未登录header中的Authorization替换为sid
@SecurityScheme(
        name = "sid",
        type = SecuritySchemeType.APIKEY,
        in = SecuritySchemeIn.HEADER,
        paramName = "sid"
)
@Configuration
public class OpenApiConfig {

    @Bean
    public OpenAPI customOpenAPI() {
        return new OpenAPI()
                .info(new Info()
                        .title("API文档")
                        .version("1.0")
                        .description("API文档描述"))
                .addSecurityItem(new SecurityRequirement().addList("sid"));
    }
}

3.application.yml文件增加如下配置

复制代码
springdoc:
  api-docs:
    path: /v3/api-docs # 更改 API 文档路径
  swagger-ui:
    path: /swagger-ui.html # 更改 Swagger UI 路径
    disable-swagger-default-url: true # 禁用默认 URL 加载
    operations-sort-parameter: alpha # 按字母顺序排序 API

4.注意

如果在项目中使用过SpringFox,需要将SpringFox的依赖全部移除

相关推荐
2601_962106643 小时前
【Java Set综合实战】商品管理系统 + 图书收藏系统|Product、Book自定义类全套代码
java
RuoyiOffice4 小时前
SpringBoot+Vue3 凭证生命周期设计:审核、过账、冲销与反过账怎样保持账目一致
java·spring boot·事务·springboot3·财务系统·会计凭证·ruoyi office
2601_962106645 小时前
HashMap入门|工号-姓名键值存储、两种遍历方式、根据key/value查
java
RuoyiOffice5 小时前
KubeSphere 容器云实践:从管理 K8s 到建设企业 PaaS,还需要哪些能力
spring boot·kubernetes·kubesphere·jenkins·paas·微服务部署·ruoyi office
杨凯凡5 小时前
Spring Framework 7 API 版本管理实战:请求头路由、兼容迁移与废弃策略
java·rest api·springframework·spring boot 4·api版本管理
T_Wizard6 小时前
同一个问题写了 4 遍:官方 SDK / HTTP / Spring AI / LangChain4j,到底该选哪个
java·ai编程
hai_android6 小时前
AudioTrack 深度解析:从原理到实战
android·java·kotlin
斯维赤6 小时前
限流、熔断、降级,你真的分得清吗?
java·后端·架构
Zan6 小时前
SQLite + SQLx 实战:为什么已经发布的数据库迁移文件,绝对不能再修改?
数据库·后端·面试
这个DBA有点耶7 小时前
数据同步的三个工程底线:DDL同步、断点续传、一致性校验——开源CDC的边界与KFS的路径
数据库·dba·代码规范