springMVC实验(二)—调式工具APIFOX的使用

【知识要点】

  1. 后端开发调试工具
    前后端分离已经成为互联网类软件开发主流模式,没有前端操作的支持,如何调试后端程序的就是开发人员必须解决的问题。如:get类请求可以直接使用浏览器就能模拟测试,但是post、put等类型的请求,则需要专门工具进行辅助测试。在实际开发中这种类型的辅助测试工具很多,如:idea集成的HTTP client、postman、Apifox等,其中Apifox是国内推出的一款调试工具,目前无论前端开发还是后端开发必须掌握的一中工具
  2. Apifox简介
    Apifox是广州睿狐科技有限公司主持开发的接口管理工具,主要服务有API 文档,API 调试、API 数据 Mock、API 自动化测试。它是一站式接口协作平台,能够通过一套系统、一份数据,解决多个系统之间的数据同步问题。在调试方面,Apifox不仅全面兼容Postman功能和脚本语法,而且后端人员可以使用接口用例调试开发中接口,只要所有接口用例调试通过,接口就开发完成了,当已开发的接口有变化,调试的时就系统自动更新了文档,零成本的保障了接口维护的及时性。

【实验目的】

  1. 掌握Apifox工具的安装配置
  2. 掌握使用Apifox进行后端服务的调试

【实验内容】

  1. Apifox安装
  2. 使用apifox调试学生信息的查询和新增
  3. 使用Apifox IDEA插件快速生成接口文档

【实验步骤】

1. Apifox安装与使用

1)进入apifox官方主页,下载apifox,下载安装包解压安装即可使用。
2) 安装完成后,启动软件,登录后进入系统。如果首次使用该软件,需要注册账户,注册完成后登录进入系统,界面如下图所示。
在这里插入图片描述
3) 登录与注册。登录之后就会有一个个人项目,里面有一个项目案例给你简单介绍这个地方的使用,会让使用者进行一个简单的了解。
4)测试环境设置。进入到创建的项目,便可以设置测试环境,如下图所示
在这里插入图片描述
5) 编写要测试的接口,添加接口过程如下图所示。测试接口编写完成后,在开发环境中启动应用,便可以开始调试。

2. 创建SpringMVC工程

1) 创建SpringMVC工程demo1
2) 项目中需要将Java对象字符换转Json字符串,需要添加fastjson坐标,如下所示

<dependency>  <groupId>com.alibaba</groupId>  <artifactId>fastjson</artifactId>  <version>1.2.72</version>  
</dependency>

3)项目中使用到HttpServletResponse,需要添加javax.servlet-api的坐标,如下所示

<dependency>  <groupId>javax.servlet</groupId>  <artifactId>javax.servlet-api</artifactId>  <version>3.1.0</version>  <scope>compile</scope>  
</dependency> 

3. 示例代码编写

1) 在com.bjwl.vo包中添加学生实体类(StudentVO),代码如下所示

public class StudentVO {  private  String sno;  private  String name;  private  Integer age;  //省略getter、setter方法  
}  

2)在com.bjwl.controller包中添加学生实体类(StudentController),代码如下所示

@Controller  
@RequestMapping(value = "student")  
public class StudentController {  private List<StudentVO> getStudents() {  List<StudentVO> students = new ArrayList<>();  StudentVO student1 = new StudentVO();  student1.setSno("001");  student1.setName("张小凡");  student1.setAge(18);  students.add(student1);  StudentVO student2 = new StudentVO();  student2.setSno("002");  student2.setName("陆雪琪");  student2.setAge(18);  students.add(student2);  return students;  }  @RequestMapping("list")  public void getAllStudent(HttpServletResponse response) throws IOException {  List<StudentVO> students = getStudents();  response.setContentType("text/html;charset=utf-8");  response.getWriter().write(JSON.toJSONString(students));  }  @RequestMapping("add")  public void InsertStudent(HttpServletRequest request, HttpServletResponse response) throws IOException {  List<StudentVO> students = getStudents();  //处理请求中文乱码问题  request.setCharacterEncoding("UTF-8");  StudentVO student = new StudentVO();  student.setSno(request.getParameter("sno"));  student.setName(request.getParameter("name"));  student.setAge(Integer.parseInt(request.getParameter("age").toString()));  students.add(student);  //处理响应中文乱码问题  response.setContentType("text/html;charset=utf-8");  response.getWriter().write(JSON.toJSONString(students));  }  
} 

程序调试

  1. 如果需要调试,设置断点,启动运行程序。
  2. 测试获取学生信息接口。打开apifox,添加学生信息获取接口student/list。设置请求参数,因为本次请求不携带参数,则无需设置参数;设置响应参数,由于代码中将ContentType设置为“text/html;charset=utf-8”,对应的响应参数为html。保存后运行,运行结果如下图所示
    在这里插入图片描述
    3)调试新增学生接口,打开apifox,添加新增学生信息获取接口student/add,请求方法的类型为post方法,设置请求参数,Content-Type类型为application/x-www-form-urlencoded,请求参数为学生的属性信息;同样响应报文的参数必须设置为“text/html;charset=utf-8”,保存后运行结果如下图所示
    在这里插入图片描述

4. 自动化接口文档生成工具—Apifox IDEA插件的使用

  1. 打开IDEA > File > Settings> Plugins,搜索并安装Apifox Helper,也可以离线下载包文件在此安装。
  2. 安装完成后,重启Idea系统。启动后进入设置界面Settings > ApifoxHelper,进行相关设置页面,如下图所示。
    在这里插入图片描述
    3) 同步模块内所有接口。在模块目录上的右键菜单中选择 Upload to Apifox,将模块中的接口导出到Apifox中,导入结果如下图所示
    在这里插入图片描述

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

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

相关文章

Linux设置Nginx开机自启

文章目录 获取linux系统是多少位: getconf LONG_BIT获取CentOS版本: lsb_release -a获取nginx的版本: nginx -version第一步配置文件 vim /etc/rc.local最底部增加这一行&#xff1a; /usr/local/nginx/sbin/nginx 第二步注册systemctl服务 在/usr/lib/systemd/system目录…

VirtualBox 7.0.8(虚拟机软件)

VirtualBox是一款开源的虚拟机软件&#xff0c;它是使用Qt编写&#xff0c;在Sun被Oracle收购后正式更名成Oracle VM VirtualBox。它可以在VirtualBox上安装并且执行Solaris、Windows、DOS、Linux、OS/2 Warp、BSD等系统作为客户端操作系统。使用者可以在VirtualBox上安装并且运…

用纯 CSS 实现网格背景

是不是在日常开发中经常遇到实现网格的需求&#xff0c;网格通常对网页中展示的元素能起到很好的定位和对齐作用。 这里介绍如何只通过 CSS 来实现这个需求&#xff1f; 使用背景图 这里我们的背景图使用 SVG 来创建&#xff0c;首先&#xff0c;创建绘出一个正方形&#xff0c…

从零构建属于自己的GPT系列1:文本数据预处理、文本数据tokenizer、逐行代码解读

&#x1f6a9;&#x1f6a9;&#x1f6a9;Hugging Face 实战系列 总目录 有任何问题欢迎在下面留言 本篇文章的代码运行界面均在PyCharm中进行 本篇文章配套的代码资源已经上传 从零构建属于自己的GPT系列1&#xff1a;文本数据预处理 从零构建属于自己的GPT系列2&#xff1a;语…

SDK emulator directory is missing

要进行uniapp真机测试&#xff0c;不得不安装配置一下安卓开发环境 &#xff0c;搞一个模拟器。。。然后又是各种坑。。对比来对比去还是IOS的环境使用着舒服&#xff0c;XCODE下载好&#xff0c;一切重点就是在编码了。。 安卓这个脑残货呀&#xff0c;哎&#xff0c;各种安装…

HTML-CSS知识速查

HTML/CSS知识速查 文章目录 HTML/CSS知识速查[toc]网页的组成浏览器**为什么需要Web标准&#xff1a;** **web标准的构成&#xff1a;**HTMLHTML语法导读**1.1 HTML语法规则&#xff1a;**1.2 基本结构标签**1.3 标签的关系&#xff1a;**1. **包含关系&#xff08;Parent-Chil…

国内首个农业开源鸿蒙操作系统联合华为正式发布

2023年11月29日&#xff0c;在中国国际供应链促进博览会上&#xff0c;中信农业科技股份有限公司&#xff08;简称“中信农业”&#xff09;与深圳开鸿数字产业发展有限公司&#xff08;简称“深开鸿”&#xff09;以及华为技术有限公司&#xff08;简称“华为”&#xff09;联…

CSS新手入门笔记整理:CSS边框样式

边框宽度&#xff1a;boder-width 语法 boder-width:像素值&#xff1b; 边框样式&#xff1a;boder-style 语法 boder-style:取值&#xff1b; 属性值 说明 none 无样式 dashed 虚线 solid 实线 边框颜色&#xff1a;boder-color 语法 boder-color:色值&#xf…

设计规则:模块化的力量

这是一本比较冷门的书**《设计规则&#xff1a;模块化的力量》**&#xff0c;虽然豆瓣上只有58个评价&#xff0c;但是确实能学到很多东西。 这本书对我非常深远。不是是投资&#xff0c;创业&#xff0c;还是其他领域&#xff0c;模块化思想都能帮上你。这本书告诉我们生万物…

深度学习实现语义分割算法系统 - 机器视觉 计算机竞赛

文章目录 1 前言2 概念介绍2.1 什么是图像语义分割 3 条件随机场的深度学习模型3\. 1 多尺度特征融合 4 语义分割开发过程4.1 建立4.2 下载CamVid数据集4.3 加载CamVid图像4.4 加载CamVid像素标签图像 5 PyTorch 实现语义分割5.1 数据集准备5.2 训练基准模型5.3 损失函数5.4 归…

电子学会C/C++编程等级考试2022年12月(三级)真题解析

C/C++等级考试(1~8级)全部真题・点这里 第1题:鸡兔同笼 一个笼子里面关了鸡和兔子(鸡有2只脚,兔子有4只脚,没有例外)。已经知道了笼子里面脚的总数a,问笼子里面至少有多少只动物,至多有多少只动物。 时间限制:1000 内存限制:65536输入 一行,一个正整数a (a < 327…

使用Java将properties转为yaml,保证顺序、实测无BUG版本

使用Java将properties转为yaml 一 前言1.1 顺序错乱的原因1.2 遗漏子节点的原因 二、优化措施三、源码 一 前言 浏览了一圈网上的版本&#xff0c;大多存在以下问题&#xff1a; 转换后顺序错乱遗漏子节点 基于此进行了优化&#xff0c;如果只是想直接转换&#xff0c;可直接…