Spring Boot接收前端参数的7种方式
创作时间:
作者:
@小白创作中心
Spring Boot接收前端参数的7种方式
引用
1
来源
1.
https://www.cnblogs.com/xiezhr/p/18078121
对于初学者来说,困难的不是理论知识,而是如何在程序中具体实现。现在的项目基本上都是前后端分离的项目,如何打通前后端,接收前端传过来的参数呢?这篇文章就来说一说接收前端参数的具体操作。
一、获取路径中的值
1.1 核心代码
@GetMapping("/getArticle/{id}")
public Article getArticle(@PathVariable("id") Long id){
System.out.println("获取到路径中的值为:"+id);
return parmsService.findArticleById(id);
}
1.2 测试结果
在访问“http://localhost:8080/article/1”时,程序会自动将URL中的模板变量{id} 绑定到通过
@PathVariable
注解的同名参数上,所以程序中可以获取到id=1
二、获取路径中的参数
2.1 核心代码
@RequestMapping(value = "/addUser/",method = RequestMethod.POST)
public String addUser(String name,String sex,int age){
System.out.println("获取到参数中的值为:"+name+","+sex+","+age);
return "添加文章成功";
}
2.2 测试结果
这里的参数和上面的不一样,这里的参数是通过“=”隔开的,多个参数使用&分割。 例如测试例子中的“http://localhost:8080/?name=小凡&sex=男&age=18”
三、通过Bean接收对象参数
3.1 核心代码
//①User
@Data
public class User {
private Integer id;
private String name;
private String sex;
private Integer age;
}
//接收参数方法
@PostMapping("/addnewUser/")
public String addUser(User user){
System.out.println(user);
return "添加用户成功";
}
3.2 测试结果
这里直接将前端传过来的参数映射到
User
对象上
四、HttpServletRequest接收参数
4.1 核心代码
@PostMapping("/addBook/")
public String addBook(HttpServletRequest request){
String bookName = request.getParameter("bookName");
String author = request.getParameter("author");
System.out.println("获取到参数中的值为:"+bookName+","+author);
return "添加书籍成功";
}
4.2 测试结果
五、用@RequestParam接收参数
5.1 核心代码
@GetMapping("/getParams")
public String getParms(@RequestParam("param1") String param1,@RequestParam("param2") String param2){
System.out.println("获取到参数中的值为:"+param1+","+param2);
return "Param1: " + param1 + ", parm2: " + param2;
}
5.2 测试结果
六、 用@RequestBody 接收json数据
6.1 核心代码
//① 定义User实体对象
@Data
public class User {
private Integer id;
private String name;
private String sex;
private Integer age;
}
//② 接收参数
@PostMapping("/addUsers")
public List<User> addUsers(@RequestBody List<User> users){
System.out.println(""+users);
return users;
}
6.2 测试结果
七、接收文件 MultipartFile
7.1 核心代码
@PostMapping("/singleFileUpload")
public String singleFileUpload(@RequestParam("file") MultipartFile file){
//文件存储路径
final String BASE_PATH = "E:\\xiezhrspace\\parm-demo\\";
if(file.isEmpty()){
return "文件为空";
}
//获取文件名
String fileName = file.getOriginalFilename();
try {
//新建一个文件路径
File dest = new File(BASE_PATH + fileName);
//判断路径是否存在,如果不存在就创建一个
if(!dest.getParentFile().exists()){
dest.getParentFile().mkdirs();
}
//将上传文件保存到一个目标文件当中
file.transferTo(dest);
} catch (IOException e) {
e.printStackTrace();
}
return "上传成功";
}
7.2 测试结果
以上就是本期全部内容,希望对您有所帮助,我们下期再见(●'◡'●)
热门推荐
冷战时期的加密秘辛:揭秘“红电话”背后的一次一密技术
时隔4年重启降息 “美元潮汐”如何影响全球经济
白银超级周期即将到来,揭秘背后原因!
如何分析美元对白银价值的影响?这种分析方法有哪些经济指标和市场因素?
沪银价格波动的主要因素有哪些?这些因素如何影响市场?
如何了解黄金开盘的行情趋势?这种了解的依据和不确定性有哪些?
《火蓝刀锋》:杨志刚演绎海军陆战队员的成长与荣耀
刘少奇与王光美的爱情传奇:从相知到相伴
搬家前要知道的 21 个关于在卢森堡生活的秘密
《火蓝刀锋》:从渔民到“兵王之王”,蒋小鱼的成长之路
《火蓝刀锋》中的战神:向羽的角色解析
《火蓝刀锋》303潜艇失踪之谜:从东南亚走私到海军追捕,真相即将揭晓
《火蓝刀锋》主演们的演技大赏!
经络穴位养生法:快速缓解太阳穴疼痛!
冥想10分钟,轻松缓解太阳穴疼痛
太阳穴疼痛怎么办?从原因到预防全攻略
太阳穴疼痛怎么办?三种缓解方法+日常预防全攻略
职场人应对太阳穴痛的实用指南
河南洛阳三日游精华路线:古寺石窟到自然风光的文化盛宴
水果泡沫网套的5种创意用途,让“废物”变身生活小帮手
沪银是什么类型的银?如何理解其市场属性?
沪银期货:合约规则、交易策略与风险管理全解析
赵本山与宋丹丹:春晚经典组合的幕后故事
赵本山春晚小品VS德云社:谁更能代表中国喜剧?
从“红色电话”到后量子密码:白宫通信加密技术的演变
一次一密:古老加密技术的现代复兴
揭秘宇宙奇观:排名第一的硅基生命存在多恐怖?
庙会灯会游园会,还有非遗过大年!北京5600余场文旅活动贺新春
张士祥医生教你快速缓解头痛
米其林医生推荐:缓解偏头痛小妙招