当前位置: 首页 > news >正文

【Java】SpringMVC参数接收

1、接收单个参数

(1)直接接收参数

@RequestMapping("/hello")
@RestController
public class HelloSpring {@RequestMapping("/t2")public String t2(String name){return "name=" + name;}
}

 当没有传入参数时,返回null

(2)包装类接收

如果我们换成int,再次看看结果

@RequestMapping("/hello")
@RestController
public class HelloSpring {@RequestMapping("/t2")public String t2(String name){return "name=" + name;}
}

postman报错。报错提示我们应该使用包装类

@RequestMapping("/hello")
@RestController
public class HelloSpring {@RequestMapping("t4")public String t4(Integer age){return "age=" + age;}
}

不传参数时,返回null,不再报错 

SpringMVC接收参数时最好使用包装类

 2、多个参数

(1)直接写 

@RequestMapping("/hello")
@RestController
public class HelloSpring {@RequestMapping("t5")public String t5(String name,Integer age){return "name=" + name + ", " + "age=" + age;}
}

(2)使用类包装

UserInfo类

public class UserInfo {private String name;private int age;private int id;public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public int getId() {return id;}public void setId(int id) {this.id = id;}@Overridepublic String toString() {return "UserInfo{" +"name='" + name + '\'' +", age=" + age +", id=" + id +'}';}
}
@RequestMapping("/hello")
@RestController
public class HelloSpring {@RequestMapping("t6")public String t6(UserInfo userInfo){return userInfo.toString();}
}

3、修改参数名 

后端接收参数的名字是跟前端保持一致的,因此我们要使用其他参数名时,则要对其进行修改

@RequestMapping("/hello")
@RestController
public class HelloSpring {@RequestMapping("t7")public String t7(@RequestParam("name")String username){return "name=" + username;}
}
//@RequestParam()中所写的是本来的参数名
//String后写的是修改后的参数名

但是如果不传入参数,就会报错

可见,上述修改参数是强制传入参数。为了能不报错,我们使参数required为false

@RequestMapping("/hello")
@RestController
public class HelloSpring {@RequestMapping("t7")public String t7(@RequestParam(value = "name",required = false)String username){return "name=" + username;}
}

这样就算不传入参数,也不会报错

4、接收数组参数

(1)直接传数组 

@RequestMapping("/hello")
@RestController
public class HelloSpring {@RequestMapping("t8")public String t8(String[] arr){return Arrays.toString(arr);}
}

(2)传集合

@RequestMapping("/hello")
@RestController
public class HelloSpring {@RequestMapping("t9")public String t9(@RequestParam(value = "list",required = false)List<String> list){return list.toString();}
}

相关文章:

  • 【电商API接口Python实例】100个Python爬虫实例
  • pyspark之Structured Streaming file文件案例1
  • 设备通过GB28181注册到EasyCVR,平台看不到设备信息的排查方法汇总
  • OpenCV第 2 课 OpenCV 环境搭建
  • LabVIEW高级CAN通信系统
  • (M)unity2D敌人的创建、人物属性设置,遇敌掉血
  • 深入Android S (12.0) 探索Framework之输入子系统InputReader的流程
  • notepad++: 插件fingertext 来创建代码块
  • 考研过后你如坐针毡,而有些人因选择中国人民大学与加拿大女王大学金融硕士而乐在其中
  • 网络中黑客攻击使用手段Top25漏洞常见参数,8个WAF绕过,一些用于查找敏感文件的语法
  • Windows ssh登录eNSP交换机
  • 直播录屏工具哪家强?让你的直播更精彩!
  • 【VRTK】【PICO】如何快速创建一个用VRTK开发的PICO项目
  • 【算法专题】动态规划之路径问题
  • alfred自定义谷歌翻译workflow
  • 时间复杂度分析经典问题——最大子序列和
  • 《微软的软件测试之道》成书始末、出版宣告、补充致谢名单及相关信息
  • export和import的用法总结
  • java概述
  • mysql 数据库四种事务隔离级别
  • pdf文件如何在线转换为jpg图片
  • Vue源码解析(二)Vue的双向绑定讲解及实现
  • 工程优化暨babel升级小记
  • 离散点最小(凸)包围边界查找
  • 理解在java “”i=i++;”所发生的事情
  • 每天一个设计模式之命令模式
  • 前端每日实战:70# 视频演示如何用纯 CSS 创作一只徘徊的果冻怪兽
  • 区块链分支循环
  • 通过来模仿稀土掘金个人页面的布局来学习使用CoordinatorLayout
  • 项目管理碎碎念系列之一:干系人管理
  • 小试R空间处理新库sf
  • 正则与JS中的正则
  • 京东物流联手山西图灵打造智能供应链,让阅读更有趣 ...
  • 如何在 Intellij IDEA 更高效地将应用部署到容器服务 Kubernetes ...
  • "无招胜有招"nbsp;史上最全的互…
  • #NOIP 2014# day.1 T3 飞扬的小鸟 bird
  • (6)【Python/机器学习/深度学习】Machine-Learning模型与算法应用—使用Adaboost建模及工作环境下的数据分析整理
  • (草履虫都可以看懂的)PyQt子窗口向主窗口传递参数,主窗口接收子窗口信号、参数。
  • (附源码)spring boot公选课在线选课系统 毕业设计 142011
  • (四)Linux Shell编程——输入输出重定向
  • (原)记一次CentOS7 磁盘空间大小异常的解决过程
  • (转)视频码率,帧率和分辨率的联系与区别
  • (转)一些感悟
  • .bat文件调用java类的main方法
  • .MyFile@waifu.club.wis.mkp勒索病毒数据怎么处理|数据解密恢复
  • .NET Core WebAPI中封装Swagger配置
  • .NET LINQ 通常分 Syntax Query 和Syntax Method
  • .net 简单实现MD5
  • .NetCore Flurl.Http 升级到4.0后 https 无法建立SSL连接
  • .net操作Excel出错解决
  • :O)修改linux硬件时间
  • ??eclipse的安装配置问题!??
  • ?php echo $logosrc[0];?,如何在一行中显示logo和标题?
  • @property python知乎_Python3基础之:property
  • @select 怎么写存储过程_你知道select语句和update语句分别是怎么执行的吗?