接口管理——Swagger

Swagger是一个用于设计、构建和文档化API的工具集。它包括一系列工具,如Swagger Editor(用于编辑Swagger规范)、Swagger UI(用于可视化API文档)和Swagger Codegen(用于根据API定义生成客户端库、server stubs等)。Swagger通过定义API的结构、参数、请求和响应格式等信息,帮助开发者更轻松地创建和管理API,并生成易于理解的文档。按照它的规范去定义接口及接口相关的信息,就可以做到生成接口文档,以及在线接口调试页面。官网地址:https://swagger.io/
与Postman相比:Swagger更关注API设计和文档化,而Postman更适合测试、调试、监视API。
Knife4j 是为Java MVC框架集成Swagger生成Api文档的增强解决方案。
使用:

  1. 在pom.xml中添加依赖(导入 knife4j 的maven坐标):
<dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-spring-boot-starter</artifactId><version>3.0.2</version>
</dependency>
  1. 在配置类(WebMvcConfiguration)中加入 knife4j 相关配置
   /*** 通过knife4j生成接口文档* @return*/@Beanpublic Docket docket() {log.info("准备生成接口文档……");ApiInfo apiInfo = new ApiInfoBuilder().title("xxx项目接口文档").version("2.0").description("xxx项目接口文档").build();Docket docket = new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo).select()//指定生成接口需要扫描的包.apis(RequestHandlerSelectors.basePackage("这里填包名:AAA.BBB.CCC")).paths(PathSelectors.any()).build();return docket;}/*** 设置静态资源映射* @param registry*/protected void addResourceHandlers(ResourceHandlerRegistry registry) {log.info("开始设置静态资源映射……");registry.addResourceHandler("/doc.html").addResourceLocations("classpath:/META-INF/resources/");registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");}

当访问http://localhost:8080/doc.html时:
在这里插入图片描述
在这里插入图片描述
通过注解可以控制生成的接口文档,使接口文档拥有更好的可读性,常用注解如下:
在这里插入图片描述
添加这些注解的作用:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/217723.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Web安全之XXE漏洞原理及实践学习

一、原理&#xff1a; XXE漏洞全称即XML外部实体注入漏洞。 攻击者强制XML解析器去访问攻击者指定的资源内容(可能是系统上本地文件亦或是远程系统上的文件)&#xff0c;导致可加载恶意外部文件&#xff0c;利用file协议造成文件读取、命令执行、内网端口扫描、攻击内网网站等…

第二百零三回 修改组件风格的另外一种方法

文章目录 概念介绍实现方法示例代码 我们在上一章回中介绍了WebView组件相关的内容&#xff0c;本章回中将介绍如何在图标旁边添加小红点.闲话休提&#xff0c;让我们一起Talk Flutter吧。 概念介绍 在实际项目中有时候需要在图标旁边显示小红点&#xff0c;而且小红点内还有数…

云原生 | Docker 和容器技术的核心概念及应用实践

在当今快速发展的软件行业中&#xff0c;Docker 和容器技术已成为必不可少的工具。它们为应用的打包、分发和运行提供了革命性的方法。本文旨在深入解析 Docker 和容器技术的核心概念、工作原理及应用实践&#xff0c;为开发者提供全面的指南和实用示例。 容器技术概述 什么是…

OCRmyPDF让你能搜索扫描版PDF文档

什么是 OCRmyPDF &#xff1f; PDF 是存储和交换扫描文档的最佳格式。不幸的是&#xff0c;PDF 可能很难修改。OCRmyPDF 是一个 Python 应用程序和库&#xff0c;可以轻松地将图像处理和 OCR&#xff08;可识别、可搜索的文本&#xff09;应用于现有 PDF&#xff0c;通过向扫描…

奥比中光 Femto Bolt相机ROS配置

机械臂手眼标定详解 作者&#xff1a; Herman Ye Auromix 测试环境&#xff1a; Ubuntu20.04/22.04 、ROS1 Noetic/ROS2 Humble、X86 PC/Jetson Orin、Kinect DK/Femto Bolt 更新日期&#xff1a; 2023/12/12 注1&#xff1a; Auromix 是一个机器人爱好者开源组织。 注2&#…

环境安全之配置管理及配置安全设置指导

一、前言 IT运维过程中&#xff0c;配置的变更和管理是一件非常重要且必要的事&#xff0c;除了一般宏观层面的配置管理&#xff0c;还有应用配置参数的配置优化&#xff0c;本文手机整理常用应用组件配置项配置&#xff0c;尤其安全层面&#xff0c;以提供安全加固指导实践。…

Apache Kafka JNDI注入注入漏洞(CVE-2023-25194)

基于Vulhub搭建的环境 一、漏洞概述 Apache Kafka是一个开源分布式消息队列&#xff0c;Kafka clients是相对应的Java客户端。 在版本3.3.2及以前&#xff0c;Apache Kafka clients中存在一处JNDI注入漏洞。如果攻击者在连接的时候可以控制属性的值为&#xff0c;则可以发起…

uni-app获取response header响应头(h5/app/小程序三端)

h5、app获取方式&#xff1a;getResponseHeader(key) 示例&#xff1a;参考&#xff1a;HTML5 API Reference // 创建xhr实例&#xff1a; // #ifdef APP-VUE let xhr new plus.net.XMLHttpRequest(); // #endif // #ifdef H5 let xhr new window.XMLHttpRequest(); // #en…

【华为OD题库-088】数字最低位排序-Java

题目 给定一个非空数组(列表)&#xff0c;元素数据类型为整型 请按照数组元素十进制最低位从小到大进行排序 十进制最低位相同的元素&#xff0c;相对位置保持不变 当数组元素为负值时&#xff0c;十进制最低位等同于去除符号位后对应十进制值最低位 输入描述 给定一个非空数组…

Redis与MySQL双写一致性如何保证?

前言 四月份的时候&#xff0c;有位好朋友去美团面试。他说&#xff0c;被问到Redis与MySQL双写一致性如何保证&#xff1f;这道题其实就是在问缓存和数据库在双写场景下&#xff0c;一致性是如何保证的&#xff1f;本文将跟大家一起来探讨如何回答这个问题。 谈谈一致性 一致…

什么是UUID

UUID是通用唯一标识符&#xff08;Universally Unique Identifier&#xff09;的缩写&#xff0c;也叫GUID (Globally Unique Identifier)。它是一个由一串数字和字母组成的标识符&#xff0c;用于在计算机系统中唯一地标识实体&#xff08;如文件、对象、数据库记录等&#xf…

如何使用内网穿透实现iStoreOS软路由R4S公网远程访问局域网电脑桌面

最近&#xff0c;我发现了一个超级强大的人工智能学习网站。它以通俗易懂的方式呈现复杂的概念&#xff0c;而且内容风趣幽默。我觉得它对大家可能会有所帮助&#xff0c;所以我在此分享。点击这里跳转到网站。 文章目录 简介一、配置远程桌面公网地址二、家中使用永久固定地址…

JeecgBoot jmreport/queryFieldBySql RCE漏洞复现

0x01 产品简介 Jeecg Boot(或者称为 Jeecg-Boot)是一款基于代码生成器的开源企业级快速开发平台,专注于开发后台管理系统、企业信息管理系统(MIS)等应用。它提供了一系列工具和模板,帮助开发者快速构建和部署现代化的 Web 应用程序。 0x02 漏洞概述 Jeecg Boot jmrepo…

Linux0.11内核源码解析-string待更新

sting.h头文件包含了所有的字符串操作函数 strcpy字符串拷贝函数 cld 指令用于设置方向标志位&#xff0c;确保字符串复制是从前向后进行。 lodsb 指令用于将 src 指针指向的字符加载到 AL 寄存器中&#xff0c;并将 src 指针递增。 stosb 指令用于将 AL 寄存器中的字符存储到 …

【DL-TensorFlow遇错】TensorFlow中遇错合集

TensorFlow中遇错合集 一、AttributeError: module tensorflow has no attribute placeholder二、RuntimeError: tf.placeholder() is not compatible with eager execution. 一、AttributeError: module tensorflow has no attribute placeholder 错误原因 tensorflow版本问…

vue.js纯前端处理如何将后台返回来的csv数据导出成csv文件

需要实现一个下载csv文件的功能&#xff0c;但后台没有对这个下载文件进行处理&#xff0c;而是将csv数据传给前台而已&#xff0c;需要前台做一下处理。 这是按钮的代码&#xff1a; <a> <el-button size"mini" class"custom-confirm" click&quo…

安科瑞出席宁波市建筑电气2023年年会-安科瑞 蒋静

12月1日&#xff0c;宁波市建筑电气2023年年会在宁波市海曙天港禧悦酒店成功举办。作为推动宁波市建筑电气行业技术发展的专业交流会&#xff0c;吸引了建筑电气行业领导、专家、设计师、厂家等300多名代表参会。期间&#xff0c;安科瑞电气股份有限公司携智能楼宇、智慧校园、…

vue3父组件调用子组件el-dialog对话框

vue3父组件调用子组件el-dialog对话框 在写项目的时候&#xff0c;经常要使用父子组件通讯&#xff0c;我已经写了很多篇博客来介绍父子组件通讯了&#xff0c;vue中的父子组件通讯方式有差不多10来种&#xff0c;最常用的就那么一两种&#xff0c;这里我介绍其中我认为最基础…

19、命令模式(Command Pattern,不常用)

命令模式&#xff0c;将一个请求封装为一个对象&#xff08;命令&#xff09;&#xff0c;使发出请求的责任和执行请求的责任分割开&#xff0c;有效降低系统的耦合度。这样两者之间通过命令对象进行沟通&#xff0c;这样方便将命令对象进行储存、传递、调用、增加与管理。命令…

【flutter对抗】blutter使用+ACTF习题

最新的能很好反编译flutter程序的项目 1、安装 git clone https://github.com/worawit/blutter --depth1​ 然后我直接将对应的两个压缩包下载下来&#xff08;通过浏览器手动下载&#xff09; 不再通过python的代码来下载&#xff0c;之前一直卡在这个地方。 如果读者可以…