Swagger

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

Swagger

​

​ RestFul API 文档在线自动生成工具 --> API文档与API定义同步更新

​ 可直接运行,可以在线测试API接口

​ 支持多种语言:(JAVA、PHP…)

在项目中使用Swagger 需要 springbox

​ swagger2

​

SpringBoot 集成Swagger

1.新建SpringBoot-web项目

2.导入相关依赖

<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 -->
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger2</artifactId>
    <version>3.0.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger-ui -->
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger-ui</artifactId>
    <version>3.0.0</version>
</dependency>
<!--3.0.0版本需要额外导入-->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-boot-starter</artifactId>
            <version>3.0.0</version>
        </dependency>

3.编写工程

4.配置Swagger

​ java/config/SwaggerConfig

@Configuration
@EnableSwagger2 //开启Swagger2
public class SwaggerConfig {
}

5.测试运行

访问地址:http://localhost:8080/swagger-ui/index.html

​

配置Swagger

Swagger的bean实例:Docket

//配置 Swaager 的 Docket 的Bean实例
    @Bean
    public Docket docket(){
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo());
    }


配置Swagger信息

    //配置Swagger信息

    //apiInfo
    public ApiInfo apiInfo(){

        //作者信息
        Contact contact = new Contact("rz","","");

        return new ApiInfo("SwaggerApi文档",  //文档标题
                "Swagger学习",  //描述
                "1.0",  //版本
                "urn:tos", //
                 contact,  //作者信息
                "Apache 2.0", //开源版本号 
                "http://www.apache.org/licenses/LICENSE-2.0", //
                new ArrayList()); //
    }

配置Swagger扫描接口

​ Docket.select()

@Bean
    public Docket docket(){
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()               .apis(RequestHandlerSelectors.basePackage("com.example.swagger.controller"))
                .paths(PathSelectors.ant("/*"))
                .build();
    }

    //配置Swagger信息

其中:

​ apis()

​ RequestHandlerSelectors配置要扫描接口的方式
​ basePackage:指定要扫描的包
​ any:扫描全部
​ none:不扫描
​ withClassAnnotation:扫描类上的注解,即withClassAnnotation(xxx.class) 只要扫到xxx,则将其归为需要的对象
​ withMethodAnntation:扫描方法上的注解

paths()过滤
PathSelectors
ant():只扫描带有xxx的接口

配置是否启动Swaager

​ enable() 是否启动,false 则不能在浏览器中访问

    @Bean
    public Docket docket(){
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .enable(false)
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.example.swagger.controller"))
                .build();
    }

配置文档分组

​ groupName()

@Bean
    public Docket docket(){
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .groupName("WOW")
                .enable(true)
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.example.swagger.controller"))
                .build();
    }

​ 配置多个文档分组

​ 配置多个Bean对象即可

@Bean
    public Docket docket1(){
        return new Docket(DocumentationType.SWAGGER_2)
                .groupName("1");
    }
    @Bean
    public Docket docket2(){
        return new Docket(DocumentationType.SWAGGER_2)
                .groupName("2");
    }
    @Bean
    public Docket docket3() {
        return new Docket(DocumentationType.SWAGGER_2)
                .groupName("3");
    }

实体类配置

​ 只要在接口,方法中返回值存在实体类,则就会被扫描到Swagger中

eg:

pojo/User

@ApiModel("用户实体类")
public class User {
    @ApiModelProperty("名字")
    String name;
    @ApiModelProperty("性别")
    int age;
}

controller

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

相关推荐

swagger-code生成apiclient的示例代码.zip

demo代码演示了如何使用swagger-codegen 的 maven 插件生成可以继承到 spring boot项目中的api client

swagger-codegen的使用方法及常见参数配置

在进行API开发时,我们通常需要定义API的接口规范和文档,以方便其他开发者调用和使用。Swagger是一款非常流行的API文档生成工具,它可以帮助我们快速生成API接口文档,并提供了许多便捷的功能。本文将介绍如何使用swagger-codegen来生成API接口文档。swagger-codegen是Swagger官方提供的一个代码生成工具,它可以根据Swagger规范文件生成各种语言的API客户端和服务端代码。

木头大左的博客 3497

swagger-codegen自动生成代码工具的介绍与使用

一、Swagger Codegen简介 Swagger Codegen是一个开源的代码生成器,根据Swagger定义的RESTful API可以自动建立服务端和客户端的连接。Swagger Codegen的源码可以在Github上找到。 GitHub: https://github.com/swagger-api/swagger-codegen 二、Swagger Codegen安装 首先机器上需...

AIfurture的博客 5010

2、TCGA数据处理(差异分析前处理)

注意:1、是R语言中用于读取文本文件并创建数据框的函数。它可以从文本文件中读取数据并将其存储为数据框的形式,每一列代表一个变量,每一行代表一个观察值。2、括号要成对,不能少了;3、file = 'TCGA-LIHC.htseq_counts.tsv'引号可以是单或双引号,建议单;4、逗号主要中英文,都是用英文模式才没错;5、.tsv文件类型必须要有,不能删除,否则读不进来;6、上面代码将TCGA-LIHC.htseq_counts.tsv文件读入并赋值给count1。

PLW_12的博客 2668

YOLOv8/v9 遥感图像目标检测实战指南:建筑物检测与变化监测

遥感图像在城市规划、灾害评估、农业监管等领域应用广泛,但传统目标检测方法存在效率低、精度不足、难以适配遥感图像大尺寸、多尺度目标等问题。本文以“建筑物检测与变化监测”为核心,基于DOTA、NWPU VHR-10等公开数据集,系统讲解YOLOv8/v9在遥感图像中的实战流程。从数据获取、格式转换、模型训练优化,到大图切片推理、建筑物变化监测,全程提供可复现的代码与参数配置。通过针对性优化(旋转增强、切片推理等),模型在NWPU VHR-10数据集上mAP50达0.85以上,可适配卫星影像、无人机航拍等多场景

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

使用Swagger Codegen生成接口代码

使用Swagger Codegen生成接口代码Swagger Codegen简介Swagger Codegen的使用编写服务代码的注意事项 Swagger Codegen简介 Swagger是用于Restful API接口生成的有力工具。通过Swagger和Spring Boot的集成,可以自动生成接口文档的html页面。除Html页面外,Swagger还会生成一个json的接口描述文件。有了这个...

robinz1001的博客 9897

【论文复现】——基于NDT与ICP结合的点云配准算法(matlab版)

基于NDT与ICP结合的点云配准算法matlab版

点云侠的博客 490

Swagger Codegen使用

一、Swagger Codegen简介 Swagger Codegen是一个开源的代码生成器,根据Swagger定义的RESTful API可以自动建立服务端和客户端的连接。官方简介看这里:Swagger Codegen 二、Swagger简单使用 新建一个SpringBoot项目 引入依赖 <dependency> <groupId&gt...

Lupu's journey - 生活、分享 3357

【ATC/DTC方法第一期】经典平均/昼夜温度周期ATC/DTC方法介绍(含Python代码实现)

【ATC/DTC方法第一期】经典平均/昼夜温度周期ATC/DTC方法介绍(含Python代码实现)

WW、forever的博客 484

硅基半导体量子点:单电子自旋量子比特技术手册

现在我们已经了解了从硅片到容错计算的全部环节,让我们用一张总览图把碎片拼成完整拼图。fill:#333;important;important;fill:none;color:#333;color:#333;important;fill:none;fill:#333;height:1em;important;important;important;color:#000!important;important;important;important;important;color:#000!

VectorShift的博客 371

Swagger Codegen生成接口

swagger Codegen根据yaml文件生成后台接口swagger的作用swagger的yaml文件定义根据yaml文件自动生成代码:1、下载生成器jar包:合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 swagger的作用 swa

hl6164085的博客 3761

1.2 Spring AI V1.1.2版本 架构全景:模块拆解与设计哲学

Override// 检查请求的 Token 数量throw new TokenLimitExceededException("请求超出 Token 限制");@Override// 记录实际消耗的 Token@Override// 最先执行// 接口// 不同实现// 使用方无需改变定义抽象,保证可移植性提供 Fluent API,提升开发体验Advisor 机制提供扩展点,支持灵活定制模块化设计让你只引入需要的依赖自动配置。

小林夕程的博客 220

Swagger——快速使用swagger

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

YR_112233的博客 8万+

17、自适应和学习索引:在线物理设计调整的新维度

本文探讨了现代数据库管理系统中自适应索引和数据库裂解的新方法,通过结合学习模型与多臂老虎机(MAB)框架,实现在线物理设计调整。文章详细介绍了自适应索引的工作原理、数据库裂解技术以及如何利用机器学习进行索引选择和优化,并讨论了MAB框架在动态调整索引结构中的应用及其实际案例。

go5gopher的博客 82

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

SpringBoot之swagger

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

qq_41343166的博客 2万+

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Swagger的使用,包括swagger2和swagger3

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

daijianzhou的专栏 8731

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

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万+
上一篇: 多线程
下一篇: Java集合
code_Floyed
博客等级 码龄7年 3粉丝 56原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值