Swagger

Swagger——【SpringBoot集成Swagger、配置Swagger、配置扫描接口、配置API分组】 直接运行,在线测试API支持多种语言 (如:Java,PHP等) 阅读详情

1.什么是Swagger

OpenAPI规范(OpenAPI Specification 简称OAS)是Linux基金会的一个项目,试图通过定义一种用来描述API格式或API定义的语言,来规范RESTful服务开发过程,目前版本是V3.0,并且已经发布并开源在github上。

Swagger是符合OpenAPI规范的接口开发工具,支持从设计和文档到测试和部署的整个API生命周 期的开发。 (https://swagger.io/)

2.Swagger常用注解

在Java类中添加Swagger的注解即可生成Swagger接口,常用Swagger注解如下:

@Api:修饰整个类,描述Controller的作用 

@ApiOperation:描述一个类的一个方法,或者说一个接口

@ApiParam:单个参数描述 

@ApiModel:用对象来接收参数 

@ApiModelProperty:用对象接收参数时,描述对象的一个字段 

@ApiResponse:HTTP响应其中1个描述 

@ApiResponses:HTTP响应整体描述 

@ApiIgnore:使用该注解忽略这个API 

@ApiError :发生错误返回的信息 

@ApiImplicitParam:一个请求参数

@ApiImplicitParams:多个请求参数

3.Swagger生成接口文档的工作原理

1、系统启动,扫描到api工程中的Swagger2Confifiguration类

2、在此类中指定了包路径com.xuecheng,找到在此包下及子包下标记有@RestController注解的controller类

3、根据controller类中的Swagger注解生成接口文档。

4.Swagger应用举例

1)先定义一个配置类

@Configuration
@EnableSwagger2
public class Swagger2Configuration {
    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.xuecheng"))
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("朱大帅网api文档")
                .description("朱大帅网api文档")
//                .termsOfServiceUrl("/")
                .version("1.0")
                .build();
    }

}

2)修改接口工程中页面查询接口,添加Swagger注解

@RestController
@RequestMapping("/cms/page")
@Api(value="cms页面管理接口",description = "cms页面管理接口,提供页面的增、删、改、查")
public class CmsPageController implements CmsPageControllerApi {

    @Autowired
    PageService pageService;

    @Override
    @GetMapping("/list/{page}/{size}")
    @ApiOperation("分页查询页面列表")
    @ApiImplicitParams({
            @ApiImplicitParam(name="page",value = "页 码",required=true,paramType="path",dataType="int"),
            @ApiImplicitParam(name="size",value = "每页记录 数",required=true,paramType="path",dataType="int")
    })
    public QueryResponseResult findList(@PathVariable("page") int page, @PathVariable("size")int size, QueryPageRequest queryPageRequest) {
        return pageService.findList(page,size,queryPageRequest);
    }
}

3)实体类中使用注解 ApiModelProperty 对属性注释

@Data
public class QueryPageRequest extends RequestData {
    //站点id
    @ApiModelProperty("站点id")
    private String siteId;
    //页面ID
    @ApiModelProperty("页面ID")
    private String pageId;
    //页面名称
    private String pageName;
    //别名
    private String pageAliase;
    //模版id
    private String templateId;
}

4)测试

访问路径:http://localhost:31001/swagger-ui.html(你本地项目的访问路径加swagger后缀)

结果:

Swagger解析大全 1.什么是Swagger OpenAPI规范(OpenAPI Specification 简称OAS)是Linux基金会的一个项目,试图通过定义一种用来描述API格式或API定义的语言,来规范RESTful服务开发过程,目前版本是V3.0,并且已经发布并开源在github上。 Swagger是符合OpenAPI规范的接口开发工具,支持从设计和文档到测试和部署的整个API生命周 期的开发。 (h... 阅读详情

相关推荐

Impala>Impala安装部署

文章目录1.安装前提2.下载安装包、依赖包3.虚拟机新增磁盘(可选)4.配置本地yum源5.安装Impala6.修改Hadoop、Hive配置7.修改impala配置8.启动、关闭impala服务 1.安装前提 集群提前安装好hadoop,hive。 hive安装包scp在所有需要安装impala的节点上,因为impala需要引用hive的依赖包。 hadoop框架需要支持C程序访问接口,查看下...

qq_44509920的博客 840

swagger的使用与步骤

ApiOperation(value = "查询所有用户", notes = "查询所有用户信息")代表对接口的描述。@Api(tags = "用户控制")代表对这个controller的描述。@ApiModelProperty属性:notes:描述该实体类属性的信息。@ApiModel属性:description:用于描述实体类。注意,端口是自己tomcat启动时的端口,以自己电脑的为准。上添加两个注解,开启Swagger功能。6、Controller接口配置。5、swagger配置类。

JackMa的博客 5791

SIwave仿真手册——软件基础(一)

最近在学习SIWAVE,在这里将自己的笔记整理一下,做一个专题。希望对大家有帮助,这个会持续更新的。仅限于软件操作学习,不涉及信号完整性的讨论。

luohuo9844的博客 4万+

本地搭建 Swagger-UI 环境搭建

源作者地址:https://testerhome.com/topics/8168前言接口测试是自动化测试过程中,投入产出比相对而言比较大的工作,我们组之前一直在用Jmeter执行接口测试工作,然后通过Jenkins调度执行Jmeter,给出测试报告。 测试报告如下:痛点客户端开发不能在线调试某个接口 客户端开发仍然需要跟服务端开发对接接口,我们组不能成为一个好的桥梁 我们接口测试反馈的结果,服务端

海神九考 3765

告别手动刷金币:零代码配置实现番茄小说自动化任务

本文详细介绍如何利用零代码配置工具实现番茄小说自动化任务,告别手动刷金币的烦恼。通过冰狐智能辅助工具的可视化配置和元数据复用功能,用户无需编程基础即可快速设置自动签到、观看广告等任务流程,大幅提升效率并避免断签风险。

weixin_42522953的博客 297

EMC工程师职业发展:从测试整改到系统设计的进阶之路

电磁兼容(EMC)是确保电子设备在复杂电磁环境中可靠工作的关键技术,其核心在于控制电磁干扰(EMI)并提升抗扰度。其基本原理涉及电磁场理论、噪声耦合路径与滤波屏蔽技术。对于电子产品而言,EMC设计直接关系到能否通过CE、FCC等强制性认证,是产品上市和市场竞争力的关键。在工程实践中,EMC工程师需要从电路设计、PCB布局、元器件选型等源头入手,将EMC要求融入产品开发全流程,实现从后期“整改”到前期“设计预防”的价值跃迁。本文聚焦EMC工程师的核心能力体系构建与职业发展路径,深入探讨了如何从掌握标准测试、电

weixin_30819085的博客 392

本地swagger环境的搭建

简介 Swagger 是最受欢迎的REST APIs文档生成工具之一,Swagger 可以生成一个具有互动性的API控制台,开发者可以用来快速学习和尝试API。Swagger 可以生成客户端SDK代码用于各种不同的平台上的实现。Swagger 文件可以在许多不同的平台上如goland,java从代码注释中自动生成。 部署 swagger 官网(https://editor.swagger.io)打...

云淡风轻 4227

【保姆级教程】YOLOv8_Pose多目标+关键点检测:训练自己的数据集

【保姆级教程】YOLOv8_Pose多目标+关键点检测:训练自己的数据集

m0_51579041的博客 1万+

Swagger使用教程

Swagger官网Swagger是一个用于设计、构建、文档化和使用RESTful风格的Web服务的开源软件框架。它提供了一种简单而强大的方式来描述和访问API的功能,使得开发人员可以更轻松地构建和测试API。Swagger的主要功能包括:API文档自动生成:Swagger可以根据代码注释自动生成API文档,包括API的路径、参数、请求和响应的格式等信息。可视化界面:Swagger提供了一个可视化的界面,使开发人员可以直观地查看和测试API。

jakelihua 5571

IDC 数据中心工程师面试题汇总

(适用于:IDC运维、机房值班、机房工程师、机柜运维、IDC基础设施、IDC网络运维岗)

老韩的Linux云计算架构师进阶之路 1093

Unity小游戏接入抖音敏感词检测

摘要: 本文介绍了Unity小游戏接入抖音敏感词检测的方法。抖音官方提供了两种API:SensitiveWordCheck用于检测敏感词,ReplaceSensitiveWords用于替换敏感词。此外,若使用键盘输入事件,可通过tt.onKeyboardComplete监听回调,平台会自动屏蔽敏感词(替换为*)。接入官方字库可有效避免审核驳回,适用于小游戏中的用户输入功能(如起名系统)。附官方文档链接及参数说明。

类人_猿的博客 4597

Swagger自动生成API文档

Swagger自动生成API文档

qq_39725573的博客 653

诊断数据库ODX标准协议ISO22901定义组成部分

综上所述,简略描述了ODX数据库中UML/XML/Text/Check rules具体功能以及详细内容。

Soly_kun的博客 907

Swagger——快速使用swagger

swagger使用教程,springboot整合使用swagger

YR_112233的博客 8万+

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

SpringBoot之swagger

SpringBoot之swagger swagger是什么 1、是一款让你更好的书写API文档的规范且完整框架。 2、提供描述、生产、消费和可视化RESTful Web Service。 3、是由庞大工具集合支撑的形式化规范。这个集合涵盖了从终端用户接口、底层代码库到商业API管理的方方面面。 springboot集成swagger <dependency> <groupId>io.springfox</groupId>

qq_41343166的博客 2万+

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Swagger的使用,包括swagger2和swagger3

Swagger的使用 1、建一个maven项目 2、引入依赖 <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.7.0</version> </dependency>

daijianzhou的专栏 8731

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Swagger升级指南:Swagger2与Swagger3注解差异揭秘

Swagger3(OpenAPI 3)是对Swagger2的一个重大升级,它不仅提供了更多的新特性,也带来了注解的变化。虽然迁移可能需要一些工作,但新的规范和特性是值得的。本文提供了一个基础的迁移指南和注解对比,帮助大家理解如何从Swagger2迁移到Swagger3,并利用它来更好地文档化API。

果酱 の 博客 1万+

【swagger关闭】生产环境关闭swagger方法

生产环境关闭swagger方法

一只懂代码不懂人情世故的源码爱好猿 3万+

关于Swagger的使用

视频讲解可以看看这个: 【黑马程序员Java项目实战《苍穹外卖》,最适合新手的SpringBoot+SSM的企业级Java项目实战】 https://www.bilibili.com/video/BV1TP411v7v6/?p=14&share_source=copy_web&vd_source=282bf01e944809becea85b62e4bd1f75

m0_63088707的博客 1811

【Swagger】Swagger简介及简单使用

说起Swagger就不得不说前后端分离当前最主流的前后端分离技术栈:Vue+Springboot后端时代:前端只用管理静态页面:html、css、js最后统一交给后端,后端将其修改为jsp,在整个过程中,后端充当主力前后端分离时代:后端:后端控制层,服务层,数据访问层【后端团队】前端:前端控制层,视图层【前端团队】前端可以自定义一些伪后端数据:json,在写的时候就存在,不需要后端,前端工程依旧能够跑起来那么前端后端如何交互?

treesorshining的博客 2800

【Swagger】Swagger-狂神笔记

前后端分离前端 -> 前端控制层、视图层后端 -> 后端控制层、服务层、数据访问层前后端通过API进行交互前后端相对独立且松耦合产生的问题前后端集成,前端或者后端无法做到“及时协商,尽早解决”,最终导致问题集中爆发解决方案首先定义schema [ 计划的提纲 ],并实时跟踪最新的API,降低集成风险Swagger号称世界上最流行的API框架Restful Api 文档在线自动生成器 => API 文档 与API 定义同步更新直接运行,在线测试API。

知不足而奋进,望远山而前行 2万+

Swagger2 和 Swagger3 的区别与使用

Swagger2 和 Swagger3 的区别与使用 主要区别: 1 导入的依赖 注意:我springboot 使用的版本为4.3.1, 版本过高会报错 Swagger2 <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> &l

A2254536570的博客 6868
上一篇: Lombok
下一篇: Postman
hit、run
博客等级 码龄10年 163粉丝 157原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值