spring boot 集成Swagger

springboot 2.7 整合swagger3.0(knife4j) 配置 springfoxHandlerProviderBeanPostProcessor 解决上面报错问题。4,启动项目,访问地址:ip:port/doc.html。production: true #开启生产环境屏蔽。enable: true #开启增强配置。因为版本问题会出现异常导出启动失败。basic: #基本的登录认证。3,springboot 配置。springboot 版本。 阅读详情

添加pom 依赖

		<dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.7.0</version>
        </dependency>
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.7.0</version>
        </dependency>

添加Swagger 配置类

@Configuration
@EnableSwagger2
public class SwaggerConfig {
    @Bean
    public Docket productApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))  //添加ApiOperiation注解的被扫描
                .paths(PathSelectors.any())
                .build();

    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder().title("swagger和springBoot整合").description("swagger的API文档")
                .version("1.0").build();
    }

}

swagger-ui 展示

访问 http://localhost:8080/swagger-ui.html 即可看到对应的UI 界面
在这里插入图片描述

swagger-ui 如果无法显示,排错如下

  1. 找不到swagger-ui 界面,但是 http://localhost:8080/v2/api-docs 访问正常【确认swagger 的两个jar 包是否都添加到了pom 文件中】
  2. 依赖于spring boot 版本不匹配【我这里springboot 版本:2.5.5,配swagger:2.7.0 正好展示,如果spring boot :2.6.7 则显示失败,报错如下,直接降低spring boot 版本即可】
org.springframework.context.ApplicationContextException: Failed to start bean 'documentationPluginsBootstrapper'; nested exception is java.lang.NullPointerException
	at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:181) ~[spring-context-5.3.19.jar:5.3.19]
	at org.springframework.context.support.DefaultLifecycleProcessor.access$200(DefaultLifecycleProcessor.java:54) ~[spring-context-5.3.19.jar:5.3.19]
	at org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.start(DefaultLifecycleProcessor.java:356) ~[spring-context-5.3.19.jar:5.3.19]
	at java.base/java.lang.Iterable.forEach(Iterable.java:75) ~[na:na]
	at org.springframework.context.support.DefaultLifecycleProcessor.startBeans(DefaultLifecycleProcessor.java:155) ~[spring-context-5.3.19.jar:5.3.19]
	at org.springframework.context.support.DefaultLifecycleProcessor.onRefresh(DefaultLifecycleProcessor.java:123) ~[spring-context-5.3.19.jar:5.3.19]
	at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:935) ~[spring-context-5.3.19.jar:5.3.19]
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:586) ~[spring-context-5.3.19.jar:5.3.19]
	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145) ~[spring-boot-2.6.7.jar:2.6.7]
	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:740) ~[spring-boot-2.6.7.jar:2.6.7]
	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:415) ~[spring-boot-2.6.7.jar:2.6.7]
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:303) ~[spring-boot-2.6.7.jar:2.6.7]
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1312) ~[spring-boot-2.6.7.jar:2.6.7]
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1301) ~[spring-boot-2.6.7.jar:2.6.7] 
```

新增内容如下:

最新版springboot 2.7.0 可以和下面两个文件搭配使用
【但是需要将@EnableSwagger2 放到springboot 启动类,另外还需要添加下面的配置文件到application.yml 中】

mvc:
    pathmatch:
      matching-strategy: ant_path_matcher
		<dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.7.0</version>
        </dependency>
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.7.0</version>
        </dependency>```
Springboot集成Swagger和Springdoc详解 Swagger2可以让开发者更方便地构建 API 文档和测试,目前最新的Swagger2只支持到3.0.0已经不在维护了,相对应Springboot版本为2.x。针对Springboot2.7.0~2.7.18可以集成swagger2:2.9.2稳定版本,Springboot3.x社区推荐使用 Springdoc OpenAPI 作为其替代品,Springdoc OpenAPI 是 Springfox 的官方继承者,提供了更新的特性和更好的维护。 阅读详情

相关推荐

Swagger详解(SpringBoot+Swagger集成)

Swagger-API文档接口引擎 Swagger是什么 Swagger是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。 在项目开发中,根据业务代码自动生成API文档,给前端提供在线测试,自动显示JSON格式,方便了后...

ai_miracle的博客 4万+

springboot 2.7版本整合swagger2代码实现

spring整合swagger2及相关bug排查

weixin_48524022的博客 8944

Spring Boot-集成Swagger

再通过Swagger衍生出来的一系列项目和工具,就可以做到生成各种格式的接口文档,生成多种语言的客户端和服务端的代码,以及。

2401_86984462的博客 3102

在SpringBoot 中集成Swagger

在SpringBoot 项目中集成Swagger ,操作非常简单一看就懂了。

hjx_code的专栏 1166

Spring Boot 3项目集成Swagger3教程

欢迎来到我的小天地,这里是我记录技术点滴、分享学习心得的地方。??让我们一起在技术的道路上不断前行!??

m0_74823094的博客 1502

Spring Boot项目集成Swagger

一、Swagger——API文档工具 1、Swagger官网地址:https://swagger.io/     Swagger是一款RestFul风格的API文档在线生成工具,用于API文档的定义与同步更新,可以直接运行,直接在线测试API接口,而且支持多种语言。 2、在项目中使用Swagger需要导入jar包:springfox-swagger2和springfox-swagger-ui Maven中央仓库查询地址:https://mvnrepository.co

NJ_Nakia的博客 345

Swagger2之SpringBoot集成使用(一起来了解Swagger2带来的)

前面几期的博客中我们对于Mybatis-Plus了解的较多,都是接触的一些数据库相关的知识,今天给大家带来的是接口相关的知识,叫做——Swagger2。

weixin_74352229的博客 1356

SpringBoot系列:Spring Boot集成Swagger2

Swagger2 Swagger是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。 随着前后端分离越来越流行,但同时前后端开发的成本也增加了,撰写和维护接口文档会耗费开发人员很大一部分精力,而Swagger的出现恰好解决了这个问题,极大的提升了团队开发的沟通效率,同时也方便开发人员进行接口开发自测。 Spring Boot集成Swagger2 首先...

Simple_Yangger的博客 9047

JAVA开发 在 Spring Boot 中集成 Swagger

添加和依赖。创建配置类启用 Swagger。添加依赖。不需要额外的配置类,会自动配置 Swagger。通过以上步骤,你可以在 Spring Boot 项目中成功集成 Swagger,并生成和查看 API 文档。

weixin_64401027的博客 1544

Spring Boot 集成 Swagger UI

作者:禅与计算机程序设计艺术Swagger(也被称作OpenAPI Specification)是一个开放源代码的项目,用于定义、描述、产生、消费RESTful API,目前已成为事实上的标准。其主要功能包括:Swagger是一个开源的API开发规范,提供了一系列工具,能够帮助设计人员、工程师快速编写清晰的API文档,从而方便其他开发者调用API。Spring Boot是一个由Pivotal团队提供的新型开源框架,其旨在帮助开发人员快速搭建单体或微服务架构中的应用。它简化了配置,通过自动装配组件和服务,降低

AI天才研究院 2075

Swagger UI及其集成到Spring Boot应用中

Swagger 是一款开源、功能丰富的 API 概述文档工具。它能够帮助我们快速、清晰地定义、结构化和展示我们的 API,同时也支持多种开发语言,如 Java、JavaScript、Python等。在 Spring Boot 中,使用 Swagger 可以极大方便 API 的测试、调试以及提供给其他团队进行交流学习。本文将会用简单的方式对 Spring Boot 和 Swagger 有个整体的认识,并通过一个实际案例——集成 Spring Boot 项目中 Swagger UI 来展现它的优点。

AI天才研究院 2793

Swagger基本知识及Spring Boot集成指南

Swagger在Spring Boot中的集成与应用 Swagger是一套基于OpenAPI规范的开源工具集,用于RESTful API的设计、文档化和测试。主要优势包括自动生成交互式文档、减少开发沟通成本、支持前后端分离协作。Spring Boot项目可通过Springfox或springdoc-openapi集成Swagger,具体步骤包括添加依赖、配置Docket/OpenAPI Bean、使用注解描述API(如@Api、@ApiOperation等)。Swagger提供可视化UI界面,支持API分组

随便写写 2383

鸿蒙OpenHarmony南向开发 轻量系统芯片移植指南(一)

OpenHarmony系统采用"系统>子系统>部件"层级架构,支持功能模块化裁剪。本文介绍了关键子系统及移植方法:1)启动恢复子系统负责内核到应用间的进程初始化,需配置启动入口标识及链接脚本;2)文件子系统提供基础文件操作接口,需适配HAL层文件读写功能,可通过Flash模拟、轻量文件系统或厂商自有方案实现。移植过程需修改config.json配置,添加对应组件定义及功能实现。系统采用模块化设计,开发者可根据实际需求灵活配置所需子系统功能。

yx525623的博客 1131

Spring Boot 集成Swagger

http://www.apache.org/licenses/LICENSE-2.0.html”//网站链接。“http://www.apache.org/licenses/LICENSE-2.0.html”//网站链接。(Ajax Post Data:{“name”:“名称”,“content”:“内容”})(Ajax Post Data:{“name”:“名称”,“content”:“内容”}).paths(or(regex(“/demo/.*”)))//过滤的接口。

2501_90392025的博客 1678

Keil5与ARM编译器V5安装指南:从下载到配置全流程解析

本文提供Keil5与ARM Compiler V5的完整安装与配置指南。针对新版Keil5默认不包含V5编译器导致老工程编译失败的问题,详细解析了从软件下载、授权管理到获取并正确安装ARM Compiler V5(AC5)的全流程,确保开发者能顺利搭建兼容老项目的稳定开发环境。

weixin_29158047的博客 873

LabVIEW与MySQL实时数据存储:传感器采集与数据库同步实践

本文详细介绍了如何将LabVIEW与MySQL结合,实现传感器数据的实时采集与高效存储。通过设计合理的数据库表结构、配置LabVIEW数据库连接工具包,并编写核心的采集与存储VI,构建了稳定可靠的数据链路。文章重点分享了批量插入、连接管理、时间同步等关键优化技巧与避坑指南,帮助工程师应对工业监控、环境监测等场景下的实时数据同步挑战。

weixin_29281915的博客 261

Spring Boot 集成 Knife4j 的 Swagger 文档

在开发微服务应用时,API 文档的生成和维护是非常重要的一环。Swagger 是一个非常流行的 API 文档工具,可以帮助我们自动生成 RESTful API 的文档,并提供了一个友好的界面供开发者测试 API。本文将介绍如何在 Spring Boot 项目中集成 Knf4j 的 Swagger,以实现 API 文档的自动生成和展示。

kersixy的博客 1688

大模型多智能体协作面试题及参考答案

在多智能体系统里,代理定义自身目标或效用函数的过程与系统架构、应用场景紧密相关。从本质上讲,目标是代理行为的导向,而效用函数则是对目标达成程度的量化评估。代理通常依据自身角色、系统全局需求以及与其他代理的交互关系来确立目标。比如在合作型 MAS 中,代理目标可能需要与全局目标对齐,像多个物流机器人协作完成货物配送时,每个机器人的目标会围绕 “高效完成分配任务”“避免路径冲突” 等展开,其效用函数可能涉及任务完成时间、能耗等指标的加权求和。目标定义的方式存在多种类型。

大模型大数据攻城狮的专栏 1022

Spring Boot 集成 Swagger

Swagger 使用指南 添加pom 依赖 <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.7.0</version> </d...

Dong滴个Dong的博客 188

如何用 ABAP 以程序方式把指定表项写入 Transport Request

本文探讨了在SAP系统中运输自定义配置表数据时如何确保主表和相关文本表数据同步运输的问题。文章分析了两种实现方案:一是直接操作CTS表结构(E071和E071K)手动添加运输条目,二是使用SOBJ对象类型自动推导依赖关系。重点阐述了第一种方法的实现细节,包括如何正确拼接表键值到TABKEY字段,并提供了示例代码说明如何将ZXA_HEADER主表和ZXA_HEADERT文本表数据同时加入运输请求。文章特别指出在全球化交付场景中,文本表缺失会导致界面显示异常,强调理解底层运输机制对解决此类问题的重要性。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 221

(计算机组成原理)第二章数据的表示和运算-第二节:数字电路基础知识

本文介绍了计算机组成原理中的逻辑门电路、多路选择器和三态门。逻辑门电路包括基本逻辑运算(与、或、非)和复合逻辑运算(与非、或非、异或、同或),这些运算通过门电路实现,并满足分配律和结合律。多路选择器(MUX)用于从多个输入信号中选择一个输出,广泛应用于数据选择、资源共享和逻辑函数实现等场景。三态门则具有三种输出状态(高电平、低电平、高阻态),常用于总线控制和信号隔离。这些元件在数字电路设计和计算机系统中具有重要作用。

快乐江湖的博客 2472

Java Spring Boot项目中集成Swagger完整步骤

SpringBoot集成Swagger生成API文档的两种方案:1)Springfox方案(适合SpringBoot2.x):添加springfox-swagger2和springfox-swagger-ui依赖,配置SwaggerConfig类,通过/swagger-ui.html访问;2)SpringDoc方案(推荐SpringBoot3.x):改用springdoc-openapi依赖,通过/swagger-ui/index.html访问。两种方式都支持自动生成RESTful接口文档,提供在线测试功能

LeungChunwai的博客 1103

【网络安全】零基础入门网络安全劝退指北

作为从16年接触网络安全的小白,谈谈零基础如何入门网络安全,有不对的地方,请多多指教。 这些年最后悔的事情莫过于没有把自己学习的东西积累下来形成一个知识体系。 后续我也会陆续的整理网络安全的相关学习资料及文章,与大家一起探讨学习。 如何入门 简单了解网络安全 网络安全就是指的确保网络系统中的数据不被别人破坏,而网安工程师就是涉及程序来维护网络安全。 网安方向有很多职位,比如安全产品工程师,安全分析师,数据恢复工程师,网络架构工程师,安全编程工程师,以及网络集成工程师等。 工作内容主要包括: 安全评测,风

互联网老辛 4580
上一篇: 解决mybati:java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0).
下一篇: git 进阶-配置多用户
阿雷由
博客等级 码龄10年 4850粉丝 116原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿雷由

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

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

抵扣说明:

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

余额充值