返回顶部
首页 > 资讯 > 后端开发 > Python >教你怎么用SpringBoot整合Swagger作为API
  • 442
分享到

教你怎么用SpringBoot整合Swagger作为API

2024-04-02 19:04:59 442人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

前言 相信无论是前端还是后端开发,都或多或少地被接口文档折磨过。前端经常抱怨后端给的接口文档与实际情况不一致。后端又觉得编写及维护接口文档会耗费不少精力,经常来不及更新。其实无论是

前言

相信无论是前端还是后端开发,都或多或少地被接口文档折磨过。前端经常抱怨后端给的接口文档与实际情况不一致。后端又觉得编写及维护接口文档会耗费不少精力,经常来不及更新。其实无论是前端调用后端,还是后端调用后端,都期望有一个好的接口文档。但是这个接口文档对于程序员来说,就跟注释一样,经常会抱怨别人写的代码没有写注释,然而自己写起代码起来,最讨厌的,也是写注释。所以仅仅只通过强制来规范大家是不够的,随着时间推移,版本迭代,接口文档往往很容易就跟不上代码了。而自动生成接口文档的框架就是我们今天的主角swagger!

一、基本使用

使用时需要导入下面的依赖:


<!--引入swagger,自动生成api说明文档-->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.9.2</version>
        </dependency>
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.9.2</version>
        </dependency>

然后书写下面的配置类即可完成配置!


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

浏览器访问Http://localhost:8910/swagger-ui.html,即可可以看到下面的界面:

在这里插入图片描述

二、自定义描述内容


@Configuration
@EnableSwagger2 //开启swagger2
public class SwaggerConfig {
    @Bean
    public Docket docket(){
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                //是否启动swagger
//                .enable(false)
                .groupName("卢泽龙")
                .select()
                //RequestHandlerSelectors:配置要扫描的接口方式
//                    basePackage : 指定要扫描的包
                    .apis(RequestHandlerSelectors.basePackage("org.lzl.laboratory.controller"))
//                    any:扫描全部
//                    .apis(RequestHandlerSelectors.any())
//                    none:不扫描
//                    .apis(RequestHandlerSelectors.none())
//                    withClassAnnotation:扫描类上的注解
//                    .apis(RequestHandlerSelectors.withClassAnnotation(RestController.class))
//                    withMethodAnnotation:扫描方法上的注解
//                    .apis(RequestHandlerSelectors.withMethodAnnotation(GetMapping.class))
                //path() 过滤什么路径
//                    .paths(PathSelectors.ant("/lzl/**"))
                .build();
    }

 //配置swagger信息 ==> apiInfo
    private ApiInfo apiInfo(){
        //作者信息
        Contact contact = new Contact("卢泽龙","https://blog.csdn.net/MoastAll","382491212@qq.com");

        return new ApiInfo(
                "云上实验室的API文档说明",
                "abcdefg",
                "v1.0",
                "https://blog.csdn.net/MoastAll",
                contact,
                "Apache 2.0",
                "http://www.apache.org/licenses/LICENSE-2.0",
                new ArrayList()
        );
    }
 }

其中如果有这样的需求:在dev,test环境中开启swagger,其他环境不开启swagger,我们只需要给Docket加上下面的environment参数,再用acceptsProfiles方法来判断环境是否符合要求!

在这里插入图片描述

使用的效果为:

在这里插入图片描述

三、给下面的models和接口一些提示信息

1.给实体类加入下面的注解

在这里插入图片描述

http://localhost:8910/swagger-ui.html的models就会呈现下面的界面:

在这里插入图片描述

2.给controller加上下面的注解

在这里插入图片描述

就会出现下面的提示信息:

在这里插入图片描述

到此这篇关于教你怎么用SpringBoot整合Swagger作为API的文章就介绍到这了,更多相关SpringBoot整合Swagger作为API内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 教你怎么用SpringBoot整合Swagger作为API

本文链接: https://lsjlt.com/news/125337.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 教你怎么用SpringBoot整合Swagger作为API
    前言 相信无论是前端还是后端开发,都或多或少地被接口文档折磨过。前端经常抱怨后端给的接口文档与实际情况不一致。后端又觉得编写及维护接口文档会耗费不少精力,经常来不及更新。其实无论是...
    99+
    2024-04-02
  • SpringBoot怎么整合Swagger Api自动生成文档
    本篇内容主要讲解“SpringBoot怎么整合Swagger Api自动生成文档”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SpringBoot怎么整合Swagger Api自动生成文档”吧!...
    99+
    2023-06-20
  • SpringBoot整合接口管理工具Swagger怎么使用
    这篇“SpringBoot整合接口管理工具Swagger怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“SpringB...
    99+
    2023-07-06
  • 使用SpringMVC怎么对Swagger进行整合
    这篇文章将为大家详细讲解有关使用SpringMVC怎么对Swagger进行整合,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。配置引入相关jar包:<dependency>&nbs...
    99+
    2023-05-31
    springmvc swagger
  • springboot使用shiro-整合redis作为缓存的操作
    说在前面 本来的整合过程是顺着博客的顺序来的,越往下,集成的越多,由于之前是使用ehcache缓存,现在改为redis,限制登录人数 以及 限制登录次数等 都需要改动,本篇为了简单,...
    99+
    2024-04-02
  • 怎么利用SpringBoot与Swagger提高API开发的效率
    怎么利用SpringBoot与Swagger提高API开发的效率?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。现在Web开发越来越倾向于前后端分离,前端使用An...
    99+
    2023-05-31
    springboot api swagger
  • SpringBoot整合Mybatis-plus怎么使用
    今天小编给大家分享一下SpringBoot整合Mybatis-plus怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。...
    99+
    2023-06-30
  • springboot怎么整合并使用mybatis
    本文小编为大家详细介绍“springboot怎么整合并使用mybatis”,内容详细,步骤清晰,细节处理妥当,希望这篇“springboot怎么整合并使用mybatis”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧...
    99+
    2023-07-06
  • SpringBoot整合java诊断工具Arthas怎么用
    这篇文章主要介绍了SpringBoot整合java诊断工具Arthas怎么用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇SpringBoot整合java诊断工具Arthas怎么用文章都会有所收获,下面我们一起...
    99+
    2023-07-05
  • 教你怎么用Python selenium操作浏览器对象的基础API
    前言 相比于高大上的各种Selenium进阶指南,个人认为夯实基础至关重要。 在Selenium测试框架的API中,主要分为三大类: 对浏览器本身的相关操作。 对浏览器页面中,元素的定位操作。 对浏览器页面中元素进行...
    99+
    2022-06-02
    Python selenium操作浏览器对象 Python selenium
  • 教你怎么用Java操作Redis
    首先让我们创建一个普通的Maven工程,添加相应的依赖 <dependencies> <dependency> <groupId&g...
    99+
    2024-04-02
  • 怎么用Springboot快速整合shiro安全框架
    这篇文章主要介绍“怎么用Springboot快速整合shiro安全框架”,在日常操作中,相信很多人在怎么用Springboot快速整合shiro安全框架问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用Sp...
    99+
    2023-07-05
  • 教你怎么用Springboot自定义Banner图案
    目录一、前言二、实现原理三、默认 Banner 实现类四、ImageBanner五、ResourceBanner六、SpringBootBanner七、实现 Banner 类八、Ba...
    99+
    2024-04-02
  • SpringBoot中怎么整合MyBatisPlus Join使用联表查询
    这篇文章主要介绍了SpringBoot中怎么整合MyBatisPlus Join使用联表查询的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇SpringBoot中怎么整合MyBatisPlus Join使用联表查...
    99+
    2023-07-05
  • 教你怎么用SpringBoot+Mybati-Plus快速搭建代码
    目录前言一、搭建一个springboot项目二、配置依赖三、配置application.yml文件四、启动类五、运行main方法六、项目结构前言 先放一个官网吧,其实本案例就是根据官...
    99+
    2024-04-02
  • 教你怎么用Python操作MySql数据库
    目录一、关于Python操作数据库的概述二、一般操作流程三、安装mysql的操作库四、基本操作一、关于Python操作数据库的概述 Python所有的数据库接口程序都在一定程度上遵守...
    99+
    2024-04-02
  • Java Properties作为集合的方法怎么使用
    这篇“Java Properties作为集合的方法怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Java&...
    99+
    2023-07-04
  • 教你怎么用Python实现GIF动图的提取及合成
    Python实现GIF动图的提取及合成 在开始之前,先来一个动图开头(预览) 图片转GIF动图 1、准备工作 在开始合并前,先明确要转换哪些图片,以及安装对应的Python库 这...
    99+
    2024-04-02
  • SpringBoot中怎么使用JPA作为数据持久化框架
    今天小编给大家分享一下SpringBoot中怎么使用JPA作为数据持久化框架的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。J...
    99+
    2023-07-05
  • linux中怎么使用Fluxbox桌面作为你的窗口管理器
    小编给大家分享一下linux中怎么使用Fluxbox桌面作为你的窗口管理器,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!安装 Fluxbox你很可能会在你的 Li...
    99+
    2023-06-16
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作