当前位置: 首页 > news >正文

【Spring Boot】SpringBoot 2.6.6 集成 SpringDoc 1.6.9 生成swagger接口文档

文章目录

  • 前言
  • 一、SpringDoc是什么?
  • 二、使用步骤
    • 1.引入库
    • 2.配置类
    • 3.访问测试
  • 总结
  • 其他配置
  • 立个Flag


前言

springfox现状
springdoc现状

之前常用的SpringFox在2020年停止更新了,新项目集成SpringFox出来一堆问题,所以打算使用更活跃的SpringDoc,这里简单介绍一下我这边SpringBoot2.6.6集成SpringDoc1.6.9的demo。


一、SpringDoc是什么?

官网链接

二、使用步骤

1.引入库

maven为例:

<dependency><groupId>org.springdoc</groupId><artifactId>springdoc-openapi-ui</artifactId><version>1.6.9</version>
</dependency>

2.配置类

代码如下(示例):

package com.yhcookie.demo.config; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Info;
import org.springdoc.core.GroupedOpenApi;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;/*** OpenAPI swagger 配置** @author yhcookie* @date 2023-08-25*/
@Configuration
public class OpenApiConfig {/*** 配置API信息* @return*/@Beanpublic OpenAPI demoOpenAPI() {return new OpenAPI().info(new Info().title("YHCookie API").description("springDoc demo API").version("v1.0.0")// 若想增加其他API信息项,可参考官网);}/*** 配置过滤规则* 若不配置该GroupedOpenApi, 默认扫描所有接口并生成文档* @return*/@Beanpublic GroupedOpenApi demoGroupedOpenApi() {return GroupedOpenApi.builder().group("group1") // 分组名,可建多个不同分组,分别扫描不同位置接口.pathsToMatch("/controller1/**")// 接口过滤,据此增加接口扫描规则(扫描@Operation注解标注的接口)。想皮一下的话,亦可自定义注解.addOpenApiMethodFilter(method -> method.isAnnotationPresent(Operation.class)) .build();}
}

3.访问测试

默认路径:
UI界面 http://localhost:9527/swagger-ui/index.html

在这里插入图片描述
json界面 http://localhost:9527/v3/api-docs
UI的展示其实就是读取该json展示的
json


总结

我这边也是刚用不久,使用中有问题可以在这交流一下。

其他配置

# 是否启用(默认启用,生产可配置false关闭)
springdoc.swagger-ui.enabled=true
# UI界面
springdoc.swagger-ui.path=/swagger-ui.html

立个Flag

翻译一下官方文档…

http://www.lryc.cn/news/156841.html

相关文章:

  • 【算法】快速排序 详解
  • 架构师spring boot 面试题
  • 电商系统架构设计系列(十一):在电商的交易类系统中,如何正确地使用 Redis 这样的缓存系统呢?需要考虑哪些问题?
  • MySQL数据库和表的操作
  • DAY-01--分布式微服务基础概念
  • 记:一次关于paddlenlp、python、版本之间的兼容性问题
  • MyBatis配置及单表操作
  • python基础教程:深浅copy的详细用法
  • 【算法篇】动态规划(二)
  • 数据库 SQL高级查询语句:聚合查询,多表查询,连接查询
  • pytorch-构建卷积神经网络
  • 点云从入门到精通技术详解100篇-点云滤波算法及单木信息提取(续)
  • Gartner发布中国科技报告:数据编织和大模型技术崭露头角
  • java八股文面试[数据库]——explain
  • Kafka3.0.0版本——增加副本因子
  • 升级iOS 17出现白苹果、不断重启等系统问题怎么办?
  • 6. `Java` 并发基础之`ReentrantReadLock`
  • float浮动布局大战position定位布局
  • 算法 数据结构 递归插入排序 java插入排序 递归求解插入排序算法 如何用递归写插入排序 插入排序动图 插入排序优化 数据结构(十)
  • OpenCV(二十二):均值滤波、方框滤波和高斯滤波
  • 二叉树的递归遍历和非递归遍历
  • JDK17:未来已来,你准备好了吗?
  • K8s和Docker
  • 使用物理机服务器应该注意的事项
  • py脚本解决ArcGIS Server服务内存过大的问题
  • Go语言Web开发入门指南
  • 保姆级教程——VSCode如何在Mac上配置C++的运行环境
  • Java 操作FTP服务器进行下载文件
  • 物理机服务器应该注意的事
  • 信息化发展24