博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring MVC @RequestParam
阅读量:6921 次
发布时间:2019-06-27

本文共 963 字,大约阅读时间需要 3 分钟。

案例来说明

1 @RequestMapping("user/add")2 public String add(@RequestParam("name") String name,3             @RequestParam("age") int age){4         System.out.println(name+","+age);5     return "hello";6 }

 

测试1

当我们请求路径为:http://localhost:8080/springmvc-1/user/add?name=caoyc&age=18

输出结果:caoyc,18

 

测试2

当我请求路径为:http://localhost:8080/springmvc-1/user/add?age=18

输出结果:有异常出现。意思是说必须要有该参数

解决方案:在@RequestParam标签中添加一个required=false,表示该属性不是必须的

1 @RequestParam(value="name",required=false)

输出结果:null,18

 

 测试3

 当我请求路径为:http://localhost:8080/springmvc-1/user/add?name=caoyc

 同样出现上面的异常

那么根据上面的方法设置

1 @RequestParam(value="age",required=false) int age

结果再运行。还是抛出异常

这里也说到很明白,大概意思是说不能讲一个null的空值赋给age。应该使用包装类型

 

那么我们将代码改成这样:

1 @RequestParam(value="age",required=false) Integer age

结果正确输出:caoyc,null

 

 

这里还有另外一种改法:给参数指定一个默认值

1 @RequestParam(value="age",required=false,defaultValue="0") int age

结果输出:caoyc,0

 

【总结】对应@RequestParam基本类型的参数我们最好都使用包装类型

 

还有相识的注解

@RequestHeader。使用方式和@RequestParam一样。这里就不做多的讲解了。

转载地址:http://ekecl.baihongyu.com/

你可能感兴趣的文章
程序员十大撩妹技能
查看>>
keepalived体系结构及相关配置
查看>>
Linux小技巧一:通过文件内的关键字来查找文件
查看>>
win7旗舰版开机蓝屏
查看>>
Linux平台下如何看OS历史的性能数据
查看>>
HTML5 之路的绊脚石
查看>>
HTML5理想与现实的博弈
查看>>
Office 365管理员指引 1 ——Office 365 Admin Center
查看>>
Apache CAS 单点登录下载(1)
查看>>
fflush函数
查看>>
基于函数的索引
查看>>
CentOS7更改默认网卡
查看>>
C盘太满清理技巧
查看>>
纽曼纽扣偷袭奇酷青春,YunOS与360OS会不会发生点什么
查看>>
C#学习常用方法(4000)---Activator.CreateInstance方法
查看>>
Unity5.0 EventSystem事件系统的详细说明
查看>>
运维采集技术分享: 通过WMI监控NAT后的Windows系统
查看>>
MFC_定时器
查看>>
Android-避免出现bitmap内存限制OUT OF MEMORY的一种方法
查看>>
Ubuntu 编译ffmpeg 实现GPU 转码
查看>>