SpringBoot初级开发--加入Swagger展现接口文档(5)

news2025/1/20 1:43:49

  Swagger 是一个规范且完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。作为web开发,它已经成了接口文档服务的代名词了。现在很多协作型项目,都用它生成api文档,让大家能够很好的协作开发。紧接上一章,我们在工程中接入Swagger来接生成接口API服务。

1.在pom.xml加入依赖

  <!-- swagger api接口服务 -->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-boot-starter</artifactId>
            <version>3.0.0</version>
        </dependency>

2.在application.properties加入关键属性

因为Springfox使用的路径匹配是基于AntPathMatcher的,而Spring Boot 2.6.X使用的是PathPatternMatcher,所以这里要修改一下。

spring.mvc.pathmatch.matching-strategy=ANT_PATH_MATCHER

3.在源代码中加入api注解

package com.example.firstweb.controller;


import com.example.firstweb.model.po.WelcomePo;
import com.example.firstweb.model.vo.WelcomeVo;
import com.example.firstweb.service.WelcomeService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
@Api(value = "welcome controller", tags = "欢迎界面")
public class Welcome {

    @Autowired
    private WelcomeService welcomeService;

    @GetMapping("/welcomeindex")
    @ApiOperation("欢迎首页的方法1")
    public ModelAndView welcomeIndex(){

        ModelAndView view = new ModelAndView("welcomeindex");


        WelcomePo wpo= welcomeService.getWelcomInfo();

        WelcomeVo wvo= new WelcomeVo();

        BeanUtils.copyProperties(wpo, wvo);

        view.addObject("welcomedata", wvo);

        return view;
    }
    @GetMapping("/welcomeindex2")
    @ApiOperation("欢迎首页的方法2")
    public void welcomeIndex2(@ApiParam("定制欢迎词") String test){

    }
}

通过浏览器访问http://localhost:8088/swagger-ui/index.html
可以看到接口api服务了
在这里插入图片描述
这里有一份Swagger注解的使用说明,可以参考一下
在这里插入图片描述
举两个例子标明使用方法

@ApiOperation(value = "新增用户")
@ApiResponses({ @ApiResponse(code = 200, message = "OK", response = UserDto.class) })
@PostMapping("/user")
public UserDto addUser(@RequestBody AddUserParam param) {
    System.err.println(param.getName());
    return new UserDto();
}
@Data
@ApiModel(value = "com.biancheng.auth.param.AddUserParam", description = "新增用户参数")
public class AddUserParam {

    @ApiModelProperty(value = "ID")
    private String id;

    @ApiModelProperty(value = "名称")
    private String name;

    @ApiModelProperty(value = "年龄")
    private int age;
}

程序源码可以在这里获得链接: https://pan.baidu.com/s/1d1zndKLcGSYAGGGcSGXRjg 提取码: ue7i

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

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

相关文章

液冷技术之液冷连接器快速接头

文章目录 系列文章目录前言一、pandas是什么&#xff1f;二、使用步骤 1.引入库2.读入数据总结 前言 热能在液冷技术的研发不断加大&#xff0c;特别是在水冷产品生产工艺上不断革新&#xff0c;在铜管自动折弯、挤型模、压管、粘连焊接等技术工艺获得了多个技术专利&#xff0…

php环境搭建步骤(与资源配套使用版)

1.将phpEnv.zip下载到D盘下 2.解压到当前文件夹 3.找到Apache24下的bin目录&#xff0c;执行cmd操作&#xff0c;回车。 4.在cmd中执行代码 Httpd -k install -n “Apache24” 4.使用winR键打开运行&#xff0c;输入services.msc &#xff0c;回车&#xff0c;进入服务 …

Java运行时jar时终端输出的中文日志是乱码

运行Jar时在控制台输出的中文日志全是乱码&#xff0c;这是因为cmd/bash默认的编码是GBK&#xff0c;只要把cmd的编码改成UTF-8即可 两种方式修改&#xff1a;临时修改和注册表永久修改 临时修改 只对当前的cmd页面有效&#xff0c;关闭后重新打开都会恢复成GBK, 打开cmd&am…

“私车公用”如何便捷又合规?百望云解决方案来支招!

“昨天有几家门店反映工作中遇到难题了&#xff0c;领导交代我赶紧去解答一下”。中午11点半&#xff0c;某大型连锁门店的督导李某顾不上吃午饭&#xff0c;开着自己的私家车赶往辖区门店。 去干公事怎么开私家车&#xff1f;面对同行人员的疑问&#xff0c;李某拿出了自己的…

Total Uninstall - 如何将程序从一台计算机传输到另一台计算机

Total Uninstall 可以帮助传输或部署程序 将程序传输到新计算机。将难以找到的程序及其设置移动到新 PC。它可以在多台计算机上安装预先配置了相同设置的程序。使用一组基本的必备程序制作备份副本。重新安装 Windows 时&#xff0c;节省安装和配置应用程序的时间。只需还原备…

超详细FPGA新手小白入门点亮LED灯

Vivado软件的基本操作&#xff08;以控制LED灯闪烁为例&#xff09; 其实之前早已用过Vivado进行FPGA的开发学习&#xff0c;但由于每次都是浅尝辄止地学了一些时间&#xff0c;加上Vivado软件和FPGA开发流程的复杂性&#xff0c;长时间不用就会遗忘。因此今天还是简单地写个笔…

空气净化器十大排名哪个除甲醛强 空气净化器品牌评测

空气净化器十大排名哪个除甲醛强 空气净化器品牌评测 十大空气净化器品牌评测&#xff0c;寻找最强除甲醛功效 房源里无时无刻不承载着我们的生活&#xff0c;我们的家庭在这个小小的空间里扎根&#xff0c;亲人的温暖也凝结其中。然而&#xff0c;室内空气污染却可能悄然渗透&…

Django基础7——用户认证系统、Session管理、CSRF安全防护机制

文章目录 一、用户认证系统二、案例&#xff1a;登陆认证2.1 平台登入2.2 平台登出2.3 login_required装饰器 三、Django Session管理3.1 Django使用Session3.1.1 Cookie用法3.1.2 Session用法 3.2 案例&#xff1a;用户登录认证 四、Django CSRF安全防护机制 一、用户认证系统…

Java-内部类:成员内部类、局部内部类、匿名内部类、静态内部类

文章目录 Java中的内部类一、成员内部类1. 成员内部类是什么&#xff1f;2. 为什么要使用成员内部类&#xff1f;3. 在哪里使用&#xff08;场景&#xff09;4. 优缺点5. 成员内部类示例代码 二、局部内部类1. 是什么&#xff1a;2. 为什么使用3. 在哪里使用4. 优缺点5. 局部内…

喜讯!哲讯科技荣获第八届“创客中国”无锡区域赛优胜奖

第八届“创客中国”暨2023年江苏省中小企业创新创业大赛无锡市区域赛于8月23日在无锡人才金融港路演厅举行。作为全国性扶持中小企业发展的重量级大赛之一&#xff0c;“创客中国”中小企业创新创业大赛一直备受行业瞩目。本次大赛以“围绕产业链、部署创新链、配置资金链、汇聚…

第五讲Java面向对象——类及类的成员

前言 前面几讲,我们讲解了java的基础知识,也写了很多代码,有没有发现,每次编写代码前都会新建一个类,并且开头是public class修饰。可能有些同学不知道什么是类,以及前面我们提到方法。那么本讲,就要开始深入了解他们。 在开始讲解,我们将先了解一下编程的思想,面向对…

超简单演示Android地图开发应用实例

概述 手机地图开发应用广泛&#xff0c;本实例演示了在手机上显示各种地图的方法。比如3D矢量地图、卫星地图、交通地图、夜景地图等在手机上的显示。可以根据手势自由做地图缩放&#xff0c;地图旋转等操作。代码简洁、实用&#xff0c;可以帮助你快速上手地图开发。 详细 …

Vue入门学习(一)

一、Vue环境搭建及第一个Demo 1.1编程工具&#xff1a; 下载Vscode,并安装插件 在Extensions 选项中搜索插件&#xff1a; 1&#xff1a;Live Server&#xff1a;将当前项目作为根路径&#xff0c;启动一个服务端&#xff0c;这样右键就会有如下选项 2&#xff1a;Eclipse …

el-select范围选择框

1、html <el-select v-model"searchForm.hour" :class"searchForm.hour?.length>1?edit-tag-hour:keep-tag-hour" filterable multiple clearable :multiple-limit"2" remove-tag"removeChange" change"hourChange"…

CS5311|CS5211|EDP转LVDS方案|EDP转LVDS显示屏主板方案设计对比

ASL集睿致远CS5211/CS5311芯片方案低bomDP转LVDS转接器芯片,性能稳定。都可应用EDP转LVDS转接板方案,但两者也是有差异的。详细对比下两者的参数如下&#xff1a; 1. 两者分辨率差异如下&#xff1a;CS5311支持的是QHD60Hz&#xff08;2560x1600&#xff09;。CS5311具有4个配…

循环购商业模式:提升复购率与用户价值的创新策略-微三云门门

亲爱的企业家们&#xff0c;我是微三云门门&#xff01;今天&#xff0c;我将为大家详细介绍一种颠覆性的商业模式&#xff1a;循环购商业模式。这个模式不仅可以帮助企业提升平台的复购率&#xff0c;还能够拉新用户并提升用户的消费率。让我们一起深入了解这个引人注目的商业…

外部配置优先级

Externalized Configuration Spring Boot允许您外部化您的配置&#xff0c;以便您可以在不同的环境中使用相同的应用程序代码。您可以使用各种外部配置源&#xff0c;包括Java属性文件、YAML文件、环境变量和命令行参数。 属性值可以通过使用Value注释直接注入到bean中&#x…

网上不小心订了电话卡怎么退?细述流量卡的退订方法和影响。

如果在网上不小心订购了流量卡&#xff0c;又不想要了&#xff0c;该怎么办呢&#xff1f;别着急&#xff0c;这篇文章教你如何解决。 ​申请的流量卡不想要了怎么办&#xff1f;三种方法看您适合哪一种&#xff1f; 如果没有收到流量卡&#xff0c;那么您需要找客服进行取消…

centos7下mysqldump定时备份数据库

单节点的MySQL没有高可用和容灾性&#xff0c;服务器可能因为突然断电导致MySQL数据不完整而无法启动的严重事故&#xff0c;所以建议定时备份数据库 环境&#xff1a; centos7.9&#xff0c;mysql8.0.27 在/etc/profile中添加了mysql的环境变量&#xff0c;启动更方便 请视…

融云 CallPlus SDK 上线!1V1 音视频、远程服务类应用的实现利器

点击报名&#xff0c;9 月 21 日融云直播课 近期&#xff0c;融云新一代音视频通话场景化 SDK CallPlus 将正式上线&#xff01;关注【融云全球互联网通信云】了解更多 融云 CallPlus 完整封装了拨打、振铃、接听、挂断等整套呼叫流程&#xff0c;支持一对一及群组多人音视频通…