springboot接收前端参数的四种方式图文详解
作者:撒哈拉a1
前言
在开始之前,我们需要一下准备工作,创建数据库,springboot工程,添加依赖,配置文件,使用的技术有mybatisplus,springboot,maven,mysql。
首先,数据库建表
然后,建立一个springboot项目,导入相关依赖,编写相关配置
其中,maven相关依赖
application.yml配置文件,我使用了mybatisplus,使用需要相关的依赖和配置
为了便于前后端交互,我使用了json进行前后端数据传递,由Java后端进行数据封装
该项目包结构如图所示
好了,到这里准备工作已经基本完成,我们来探究后端如何接收前端给我们的参数
第一种:直接在方法中指定参数
我们在UserController中编写一个方法,通过用户名和密码得到一个user对象
在接口中添加方法,在实现类中重写
使用apifox进行测试,可以看到我们已经得到了返回结果
我们在UserController中使用了日志记录了查询过程,可以看到在控制台输出了username,说明我们已经得到了这个参数,但是该方法有有几个缺陷,一是我们在apifox中body中参数要一一对应,username和password的位置不能错,二是参数名称必需一致,如果不同则不能接收到该参数。
那么显然,这种接收参数的方法有很多缺陷,所以我们需要去改进。
第二种:使用@requesrParam注解
该方法解决了第一种方法的缺点,不需要参数一一对应,也不需要名称一致,在注解里面,可以随意填写任意名称,都可以对应。
第三种方法:基于@pathVariable
我们只需要在请求路径上添加参数,但是注意,路径上添加的参数需要用括号拼接,且和方法内对应的参数名称要相同。
第四种方法:基于@ResquestBody
该注解使用频率最高,可以将参数自动封装为一个对象
用@ResquestBody封装的对象,我们可以完整的保留user对象中对应的所有属性,未赋值的属性对应为空,且可以通过set,get方法对对象进行修改赋值和提取。
总结
到此这篇关于springboot接收前端参数的四种方式的文章就介绍到这了,更多相关springboot接收前端参数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!