spring boot 整合 swagger2,并设置post,get请求方式

2023-10-31

1.pom添加依赖

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

2.创建配置类(与springboot启动类平级)

package com.passingly;

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.service.Contact;
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 api()
    {
        return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo())
            .select()
            // 自行修改为自己的包路径
            .apis(RequestHandlerSelectors
                .basePackage("com.passingly.web.controller"))
            .paths(PathSelectors.any())
            .build();
    }
    
    // 构建 api文档的详细信息函数,注意这里的注解引用的是哪个
    private ApiInfo apiInfo()
    {
        return new ApiInfoBuilder()
            // 页面标题
            .title("***系统-api文档")
            // 创建人
            .contact(new Contact("gulang", "http://www.baidu.com", ""))
            // 版本号
            .version("1.0")
            // 描述
            .description("API 描述")
            .build();
    }
}

3.在 controller类添加swagger2(API)注解


import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.passingly.model.entity.UserEntity;
import com.passingly.model.req.UserReq;
import com.passingly.service.UserService;

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

@Api("用户测试")
@RestController
@RequestMapping(value = "/user")
public class UserController
{
    @Autowired
    private UserService userService;
    
    @ApiOperation(value = "查询用户信息", notes = "查询数据库用户信息")
    @RequestMapping("/list")
    public List<UserEntity> list(UserReq userReq)
    {
        return userService.list(userReq);
    }
}

至此swagger配置完毕,启动项目打开网址

  • localhost:8080/swagger-ui.html
    在这里插入图片描述

会看到同一个存在多个请求,需要在controller的RequestMapping添加请求方式即可

@RequestMapping(value = "/user", method = {RequestMethod.POST,RequestMethod.GET})

在这里插入图片描述

启动后发现请求参数看不到

在这里插入图片描述

需要在controller入参的位置添加注解@RequestBody并在实体类中添加解释注解

在这里插入图片描述
在这里插入图片描述

重启系统后点击入参即可,很方便

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

spring boot 整合 swagger2,并设置post,get请求方式 的相关文章

随机推荐

  • 笔记/Linux命令

    ls 查看当前文件夹下的内容 pwd 查看当前所在文件夹 cd 目录名 切换文件夹 touch 文件名 如果文件不存在 新建文件 mkdir 目录名 创建目录 rm f 强制删除 忽略不存在的文件 无需提示 r 递归地删除目录下的内容 删除
  • C++ 实现一个消息队列

    文章目录 前言 一 如何实现 1 接口定义 1 推送消息 2 等待消息 3 轮询消息 2 用到的对象 1 队列 2 互斥变量 3 条件变量 3 基本流程 1 线程通信 二 完整代码 三 使用示例 1 线程通信 1 等待消息 2 轮询消息 总
  • 【Twitter 舆论分析】Twitter 爬虫绕过API限制

    0x00 前言 使用API可以很简单的获取到想要的数据 但是由于国内API的申请比较困难 所以如何绕过API直接爬虫是一个迫切需要解决的问题 Github上的点击收藏量高的不限制爬虫都已经被twitter封过了 这里分享的版本是最开始写爬虫
  • 不用加减乘除做加法

    不用加减乘除做加法 写一个函数 求两个整数之和 要求在函数体内不得使用 四则运算符号 示例 输入 a 1 b 1 输出 2 5 7 5 0101 7 0111 我们可以先计算5 7 12中的如果不进位时的数字 然后再把进位加入 1 不算进位
  • select、poll、epoll函数详解

    select和poll的区别 1 select 函数 1 1 概念 1 2 描述符集 1 3 描述符就绪条件 1 3 1 读就绪条件 1 3 2 写就绪条件 1 3 3 异常就绪条件 1 4 select的最大描述符数 2 poll函数 2
  • 震惊!!!一眼就能看懂的getBoundingClientRect用法!!!

    主要介绍getBoundingClientRect的基本属性 以及具体的使用场景和一些需要注意的问题 getBoundingClientRect Element getBoundingClientRect 含义 方法返回元素的大小及其相对于
  • 95-38-025-Buffer-Buffer

    1 ByteBuf总述 引入缓冲区是为了解决速度不匹配的问题 在网络通讯中 CPU处理数据的速度大大快于网络传输数据的速度 所以引入缓冲区 将网络传输的数据放入缓冲区 累积足够的数据再送给CPU处理 1 1 拓扑图 1 2 Buffer的分
  • redis是否支持事务?

    redis是支持事务的 通过multi开启事务 通过exec提交事务 通过discard取消事务 但是redis的事务是 不支持自动回滚的 在事务中 如果执行了多条命令 有一条执行失败了 其他的命令还是正常执行
  • 【梯度下降算法】{2} ——多元线性回归中的梯度下降法

    此处分析一下多元线性回归模型中的梯度下降法 线性回归模型的损失函数 即使是对于样本特征数只有1的线性回归中 中也包含两个值 0和 1 梯度下降法的实现过程 代价函数 梯度下降法 当使用梯度下降法求代价函数函数最小值的时候 有时要对目标函数进
  • eclipse工作空间配置--------新建菜单初始项

    当我们新建new时 找不到我们所需要的新建选项每次都在other里面搜索很是麻烦 我们可以配置菜单的初始项 让新建菜单栏展示我们常用的选项 去掉不用的 下面以Folder为例子 首先查看新建菜单栏初始项发现没有Folder other查看所
  • 自定义VLC播放器 C#实现(一)

    1 Vlc DotNet Forms实现 实现方式 1 通过Nuget工具下载Vlc DotNet Forms包 2 在窗体中载入VlcControl控件 3 设置vlcControl的VlcLibDirectory属性 此属性指向 lib
  • IDEA 使用commit之后一闪而过 没有错误也没有警告

    1 选择行分隔符为CRLF 为windows的utf 8 2 在设置 代码样式 行分隔符中也如上选择 点击应用 3 在设置 文件编码中 如图这三个地方也选择utf 8 点击应用 4 重启IDEA即可 参考链接 https blog csdn
  • upload-labs靶场-Pass-05关-思路以及过程

    开始前的小准备 upload labs靶场 是PHP环境运行的 所以我准备了一个PHP脚本和一张图片 图片好准备 PHP脚本如果不想写的话可以用我的这个获取当前时间的PHP脚本 图片默认不清楚放大看 Pass 05 代码 is upload
  • CVPR 2020

    性能优于PDA MDA和SWDA等网络 作者团队 北京航空航天大学 1 引言 近年来 在基于深度学习的目标检测中见证了巨大的进步 但是 由于domain shift问题 将现成的检测器应用于未知的域会导致性能显著下降 为了解决这个问题 本文
  • Web自动化测试08:Selenium—键盘操作

    更多功能测试以及全套学习路线图均在专栏 戳进去领取 Web自动化测试01 认识web自动化在什么项目中适用 Web自动化测试02 Web自动化测试工具选择大全 Web自动化测试03 Selenium安装配置 详细教程 Web自动化测试04
  • spring bean实例化的三种方法

    文章目录 前言 代码结构 一 构造方法实例化bean 实用 1 代码 2 运行结果 3 实例化说明 二 使用静态工厂实例化bean 了解 1 代码 2 运行结果 3 实例化说明 三 使用实例工厂实例化bean 了解 1 代码 2 运行结果
  • 搭建Freekan私人影视电影网站,cpolar内网穿透发布上线

    文章目录 1 前言 2 本地网页搭建 2 1 环境使用 2 2 支持组件和环境设置 2 3 支持组件选和环境设置 2 4 网页安装 2 5 测试和使用 2 6 问题解决 3 本地网页发布 3 1 Cpolar云端设置 3 2 Cpolar本
  • CUDA 线程执行模型分析(一)招兵------ GPU的革命

    CUDA 线程执行模型分析 一 招兵 GPU 的革命 序 或许看到下面的内容的时候 你会觉得和传统的讲解线程 和一些讲解计算机的书的内容不是很相同 我倒觉得有关计算机 编程这些方面的内容 并不都是深奥难懂的 再深奥难懂的事情 其实本质上也是
  • 计算机信息技术的具体应用案例,信息技术应用 用计算机画函数图象教学设计案例...

    徐敏 地区 北京市 北京市 海淀区 学校 北京市永定路中学 共1课时 信息技术应用 用计算机画函数图象 gt 信息技术应用 用计算机 初中数学 人教2011课标版 1教学目标 知识目标 1 理解一次函数和正比例函数的概念 2 根据实际问题列
  • spring boot 整合 swagger2,并设置post,get请求方式

    1 pom添加依赖