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的依赖全部移除

相关推荐
AI_paid_community7 分钟前
机械研发人员如何使用 Claude?
java·vue.js
MacroZheng9 分钟前
同事:“Claude Code都能自动写代码了,还要什么Spec Coding?” 我反问:“屎山代码你来维护?”
java·人工智能·后端
Databend13 分钟前
从全表排序到概率统计:Databend 如何用 KLL、Top-N 与 CMS 改进基数估计
大数据·数据库·算法
未秃头的程序猿15 分钟前
JDK 26的Value Class,我做了个性能测试,结果出乎意料
java·后端·面试
bonechips15 分钟前
RAG实战(一):EPUB 加载、文本切割与向量入库
前端·数据库
Zane199418 分钟前
volatile / synchronized / final:三大特性(原子性/可见性/有序性)到底谁保证了什么?
java·后端
巴勒个啦20 分钟前
从需求到上线:记录一次完全由 AI 辅助完成的小产品全流程
java·前端
名字还没想好☜26 分钟前
Spring @Async 不生效排查:自调用失效、默认线程池坑与异步方法里的异常去哪了
java·python·spring·异步
wechatbot88828 分钟前
解决企业微信官方 API 短板:iPad 协议全功能对接方案
java·汇编·windows·http·微信·企业微信
Tim_1041 分钟前
【C++】020、野指针&悬空指针
java·开发语言