Springboot2.0 整合 Swagger API 接口

Spring Boot与OpenAPI的集成 OpenAPI(以前称为Swagger)是一种用于设计、构建和文档化API的开放标准,它提供了强大的工具和库来简化API的开发和维护。本文详细介绍了如何在Spring Boot项目中集成OpenAPI(Swagger),包括项目初始化、Swagger配置和创建API接口。在Swagger UI中,您可以看到自动生成的API文档,包括每个接口的详细说明、请求参数、响应类型等信息。在上面的配置中,我们启用了Swagger,并指定了扫描的API包路径。首先,创建一个Spring Boot项目,并添加必要的依赖。 阅读详情

springboot 版本为:2.0.1.RELEASE

swagger 版本为 2.8.0

1 maven  pom.xml 添加以下依赖:

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

2 创建类SwaggerConfig

package com.ganjiangps.wangdaibus.config;


import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;


import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;


@Configuration
@EnableSwagger2
public class SwaggerConfig {


@Bean
public Docket createRestApi(){
System.out.println("=============================================");
return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.ganjiangps.wangdaibus.controller.test"))
                .apis(RequestHandlerSelectors.basePackage("com.ganjiangps.wangdaibus.controller"))
               // .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))  //只显示加了注解的api
                  .paths(PathSelectors.any())
                .build();
}

private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("管理系统")
                .description("powered by By-Health")
                .termsOfServiceUrl("http://localhost:8080/swagger-ui.html")
                //.contact(contact)
                .version("1.0")
                .build();
    }

}


3 继承WebMvcConfigurationSupport 配置静态资源,注:解决访问404问题

//配置静态资源
@Override
protected void addResourceHandlers(ResourceHandlerRegistry registry) {
         registry.addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/");
        registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
  super.addResourceHandlers(registry);
}


4 新建api测试类:

package com.ganjiangps.wangdaibus.controller.test;


import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;


import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;


@Api(value="测试即可",consumes="1212")
@Controller
@RequestMapping("/swagger/test")
public class SwaggerTestController {
@ApiOperation(value="测试接口",notes="根据idid")
@ApiImplicitParam(name = "id", value = "d", required = true, dataType = "String")
@ResponseBody
@GetMapping("/test")
public String test(String id){
return "Hello Word!";
}
}



5启动项目,访问 http://localhost:8080/swagger-ui.html,出现下图配置成功



Swagger注解

swagger通过注解表明该接口会生成文档,包括接口名、请求方法、参数、返回信息的等等。

  • @Api:修饰整个类,描述Controller的作用
  • @ApiOperation:描述一个类的一个方法,或者说一个接口
  • @ApiParam:单个参数描述
  • @ApiModel:用对象来接收参数
  • @ApiProperty:用对象接收参数时,描述对象的一个字段
  • @ApiResponse:HTTP响应其中1个描述
  • @ApiResponses:HTTP响应整体描述
  • @ApiIgnore:使用该注解忽略这个API
  • @ApiError :发生错误返回的信息
  • @ApiImplicitParam:一个请求参数
  • @ApiImplicitParams:多个请求参数


6 生成angualr6 需要的实体类和service文件

swagger 自动生成文件地址:https://editor.swagger.io/

访问 http://localhost:8080/v2/api-docs,把json内容复制过去 选择generate-client   =>  typescript-angular-client 就可以自动生成angualr 需要的service和model



完。。。。。



springboot2.X整合mybatis-plus,JPA,swagger2.0项目实现 阅读详情

相关推荐

springboot2与swagger2整合

传统的做法,我们应该会为每个系统准备一份接口文档,方便各个团队之间的交流。但是在微服务快速发展的今天,各个系统之间的交流基本都依赖于接口调用,这样就导致接口变得越来越多,开发人员在开发的同时还要维护文档,任务量加重,哀声一片,也可能会出现开发人员未及时维护文档,使得文档与接口信息不一致。 传统做法,在如今是一个不太友好的方式,为了解决上述问题,Swagger出现了。Swagger是一款可以通过注...

二月初二 6963

springboot集成springdoc-openapi(模拟前端请求)

springdoc-openapi使用`@io.swagger.v3.oas.annotations`包下的注解来定义API文档,它遵循OpenAPI规范,并提供了一些额外的注解来进行更细粒度的控制。springdoc-openapi-ui中间已经包含了swagger也就是说,使用springdoc-openapi-ui是可以替代的。- springdoc-openapi通常只需要引入`springdoc-openapi-ui`依赖,并且不需要太多的配置即可生成和展示OpenAPI文档。

比起日出,我更喜欢日落。我的意思是比起遇见你,我更喜欢与你终老 8849

【SpringBoot】16、SpringBoot中整合Swagger2接口文档

接口文档在我们日常开发工作中起到不可或缺的作用,特别是前后端分离的项目,需要使用接口文档来进行通信,而 Swagger2 是开源免费使用的,是一个减轻我们工作量的一款不错的工具 1、引入 Swagger2 依赖 <!-- swagger2 --> <dependency> <groupId>io.springfox</groupId> ...

JACKAL 20万+

SpringBoot 3.0整合OpenAPI使用教程

原创 Web开发札记发表于江苏收录于合集#SpringBoot6个温馨提示Spring Boot 3 只支持OpenAPI3规范Knife4j提供的starter已经引用springdoc-openapi的jar,开发者需注意避免jar包冲突JDK版本必须 >= 17。

竹林幽深 3581

Python数据分析案例——宏观经济指标与沪深指数实证研究分析

沪深300指数与宏观经济指标关联性研究:2015-2024实证分析 摘要:本文基于2015-2024年月度数据,采用多元回归方法分析宏观经济指标对沪深300指数的影响。研究发现,市场情绪(SEN)、美国利率(STY)、美元指数(DXY)、狭义货币供应量(M1)和CPI对指数具有显著解释力(P<0.05),而GDP、LPR等传统指标影响不显著。模型解释力达62%(R²=0.62),表明A股短期走势更受资金流动、投资者心理和国际金融条件驱动。研究为投资者提供了除基本面外的市场预判指标,建议关注M1增速、美

weixin_50902344的博客 1404

Isaac Lab强化学习实战:用SO-ARM101机械臂实现抓取任务(附B站视频教程)

本文详细介绍了如何使用Isaac Lab强化学习框架,在SO-ARM101机械臂上实现抓取任务的完整实战流程。内容涵盖从环境搭建、奖励函数设计、训练调参到模型部署的各个环节,并分享了Sim-to-Real迁移的关键技巧,旨在帮助开发者高效完成机器人强化学习项目。

weixin_29070721的博客 1101

springboot集成springdoc-openapi

SpringBoot集成 Spring Doc 接口文档和 knife4j

Never__GiveUp的博客 6461

大语言模型在构建UNSPSC 分类数据中的应用

UNSPSC 是联合国标准产品和服务代码。本文研究如何利用大语言模型生成分类系统的分析

姚家湾博客 1855

Spring Boot 整合 springdoc-openapi

SpringDoc学习笔记

坚持学习永不言弃 9156

Jenkins中文显示不全?三步搞定Locale插件+汉化包的正确安装姿势

本文针对Jenkins界面中文显示不全问题,提供从原理到实战的深度解决方案。文章详细解析了Locale插件与中文语言包的核心机制,并分步指导如何通过配置JVM环境、正确安装插件及执行深度排查,彻底解决汉化顽疾,实现Jenkins界面的完美中文显示。

weixin_42611310的博客 259

Deepseek 10分钟化身理性荐股神器:触碰程序员不敢想的天花板

在这个消息疯狂、波动频繁的市场,“理性”两字显得弥足珍贵。通过Deepseek+AkShare+Aktools+Dify四位一体的方案,能帮我们降低信息搜集成本,并在短期投资领域搭建出一套“可解释、低门槛、易定制”的量化荐股流程。不要再盲目听小道消息或依赖情绪驱动,不妨给自己一个机会,让数据说话。而要注意的是,“理性荐股”并非万能,它只是工具,最终的收益还得依赖投资者自身对风险和机遇的权衡。祝大家都能在这股市里收获理性的底气,寻得更精准的入场时机。

qqxdh的博客 3751

SpringBoot2整合Swagger2最新版本3.0.0 构建前后端分离API接口文档

前后端分离的开发模式对大家来说已经不再陌生,开发联调环节后端api接口文档对项目进度来说是一个痛点,尤其是在规模较大的研发团队或微服务项目,目前比较好的解决方案是集成Swagger2框架,网上也有不少帖子。 话不多说,直接进入本文的主题:Swagger2最新版本3.0.0的搭建及注意事项: 1、引入依赖包: ...

Justforyour的博客 5739

1 四种防反接电路——multisim仿真

摘要:防反接电路可防止电源反接损坏器件,主要有四种方案:1)二极管串联(低成本,适用小电流);2)整流桥(无极性输入,但效率低);3)保险丝+稳压管(低损耗但需更换);4)MOS管方案(大电流、高效率,主流选择)。选型需考虑电流、压降和成本,MOS管因其低导通电阻(毫欧级)成为大电流应用的首选。口诀:"小电流二极管,大电流用MOS"可快速指导设计。

XU157303764的博客 1568

springboot整合配置swagger3

Swagger 3 是基于 OpenAPI 规范 3.0 的 API 文档工具,用于设计、构建和消费 RESTful API。自动生成交互式文档API 测试与调试代码生成(客户端/服务端)多语言支持@Tag(name = "学校管理", description = "学校管理接口")@Operation(summary = "添加学校", description = "创建新学校并初始化管理员账号")

kkddqq1121的博客 973

【HALCON工业视觉应用探索】08. C#+Halcon视觉引导机器人抓取:从入门到工业级实战(附完整代码+部署指南)

摘要:本文聚焦C#+Halcon在视觉引导机器人抓取领域的落地应用,从新手友好的“二十分钟基础引导系统”切入,逐步深入工业级场景(汽车变速箱壳体抓取)。内容涵盖核心概念(手眼标定原理、坐标转换、机器人通信协议)、完整技术流程(图像采集→目标定位→标定转换→机器人执行→结果反馈)、工业级代码实现(多目标识别、智能抓取策略、实时状态监控),以及现场部署关键技巧(硬件选型、通信配置、精度优化)。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 1263

YOLOv11改进 | 特殊场景改进篇 | 2024最新改进CPA-Enhancer链式思考网络(适用低照度、图像去雾、雨天、雪天)

本文给大家带来的改进机制是2024.3月份最新改进,由CPA-Enhancer: Chain-of-Thought Prompted Adaptive Enhancer for Object Detection under Unknown Degradations论文提出的CPA-Enhancer链式思考网络CPA-Enhancer通过引入链式思考提示机制,实现了对未知退化条件下图像的自适应增强。该方法的核心在于能够利用CoT提示对图像退化进行动态分析和适应,从而显著提升物体检测性能。

Snu77的博客 2013

spring boot 集成 swagger 3 和 swagger2

目的很简单,长远是接口管理就是为了前端开发人员看着方便,方便开发=》我也比较菜,没找到官方文档的整合资料 它的访问方式:http://localhost:8080/swagger-ui/index.html对,必须这样,跟swagger2不同,就要这样访问,不然会报错...............

tengyuxin的博客 738

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

ios调用restful接口_SpringBoot整合Swagger与REST接口返回值

一,整合Swagger3.0随着Spring Boot、Spring Cloud等微服务的流行,在微服务的设计下,小公司微服务工程jar小的几十个,大公司大的工程拆分jar多则几百上万个,这么多的微服务必定产生了大量的接口调用。而接口的调用就必定要写接口文档(由开发人员编写)。存在的问题:(面对多个开发人员或多个开发团队)项目开发接口众多,细节,复杂,且多样化,高质量地创建接口文档费时,费力。随着...

weixin_39753616的博客 216

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

springboot 集成 swagger2 3.0.0 版本,并且授权和统一接口状态码显示

swagger2 2.xx 版本bug太多了,要么显示数据异常,经常报错,最新出来了 3.0 ,果断抛弃 2x系列。 引入pom文件 这里的引入依赖和以前不一样,现在全新的依赖,是和springboot 相结合 <!-- SpringBoot整合springfox-swagger3 --> <dependency> <groupId>io.springfox</groupId> <artif

fanghuainihao的博客 954

SpringBoot整合Swagger2,再也不用维护接口文档了!

前后端分离后,维护接口文档基本上是必不可少的工作。一个理想的状态是设计好后,接口文档发给前端和后端,大伙按照既定的规则各自开发,开发好了对接上了就可以上线了。当然这是一种非常理想的状态,实际开发中却很少遇到这样的情况,接口总是在不断的变化之中,有变化就要去维护,做过的小伙伴都知道这件事有多么头大!还好,有一些工具可以减轻我们的工作量,Swagger2就是其中之一,至于其他类似功能但是却收费的软件,...

江南一点雨的专栏 16万+

springboot整合swagger2

Spring Boot 整合 Swagger2 的作用主要体现在以下几个方面:自动生成接口文档:Swagger2 能够根据 Spring Boot 项目中的代码自动生成 RESTful API 文档,减少了手动编写和维护 API 文档的工作量。提高开发效率:通过自动生成的文档,开发人员可以快速了解和测试各个 API 接口的功能和参数,提高了开发效率。减少沟通成本:在前后端分离的开发模式中,Swagger2 提供的在线文档可以减少前后端的沟通成本,帮助新加入项目的同事快速上手业务。

2403_87916407的博客 1704

SpringBoot整合Swagger2API文档详细使用

SpringBoot整合Swagger2API文档详细使用引言构建MAVEN工程创建maven project引入pom依赖创建swagger配置类创建springboot启动类启动工程,浏览器输入http://localhost:8080/swagger-ui.html整合Mybatis提供一个接口供于测试引入mybatis依赖数据库SQL配置YML文件pojo类mapper层service层c...

小薛博客-助力人人成为架构师 3107

springboot整合swagger2 (swagger-bootstrap-ui)

1. springboot整个swagger2 步骤: 第一步导入依赖: <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.7.0</version> </dependency> <depen

小艾的未解之谜 1万+

SpringBoot整合Swagger2

这个月马上就又要过去了,还在找工作的小伙伴要做好准备了,小编整理了大厂java程序员面试涉及到的绝大部分面试题及答案,希望能帮助到大家《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!这个月马上就又要过去了,还在找工作的小伙伴要做好准备了,小编整理了大厂java程序员面试涉及到的绝大部分面试题及答案,希望能帮助到大家[外链图片转存中…(img-8w3gT3G7-1711825158895)]

2301_76238237的博客 966

SpringBoot整合Swagger3.0

Swagger 是一个规范且完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。Swagger 的目标是对 REST API 定义一个标准且和语言无关的接口,可以让人和计算机拥有无须访问源码、文档或网络流量监测就可以发现和理解服务的能力。当通过 Swagger 进行正确定义,用户可以理解远程服务并使用最少实现逻辑与远程服务进行交互。与为底层编程所实现的接口类似,Swagger 消除了调用服务时可能会有的猜测。Swagger 的优势支持 API 自动生成同步的在线文档:使用 Swa

蓝天⊙白云的博客 4832
上一篇: 添加js文件 --Service
下一篇: 中后台脚手架 ng-alain 命令行工具【1.1.3版本】
phpfzh
博客等级 码龄10年 22粉丝 102原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值