没有合适的资源?快使用搜索试试~ 我知道了~
对SpringMVC的@RequestParam的解释
4 下载量 191 浏览量
2020-08-29
13:12:09
上传
评论
收藏 59KB PDF 举报
温馨提示
试读
2页
下面小编就为大家带来一篇对SpringMVC的@RequestParam的解释。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
资源推荐
资源详情
资源评论
对对SpringMVC的的@RequestParam的解释的解释
下面小编就为大家带来一篇对SpringMVC的@RequestParam的解释。小编觉得挺不错的,现在就分享给大家,
也给大家做个参考。一起跟随小编过来看看吧
自自SpringMVC4.2之后,之后,RequestParam内部有内部有4个参数:个参数:
1、、String name
2、、String value
3、、boolean required
4、、String defaultValue
其中name和value分别是对方的别名,即二者没区别,我个人比较喜欢用name,因为它的某些特性使得name这个名字更直
观,下面会说到。
先看第一个映射方法的定义:
@RequestMapping("/paramTest0")
public @ResponseBody String paramTest(Long id){
String result = "";
result += id;
return result;
}
①然后我在浏览器地址栏上输入:然后我在浏览器地址栏上输入:http://localhost:8080/test/hello/paramTest0
浏览器显示:null
这里引申出了SpringMVC的一个特性,即当浏览器中没有输入相应参数和值,那么SpringMVC会给id赋值为null,注意是null
而非0,因此参数都最好不要用基础类型。
②在浏览器中输入:在浏览器中输入:http://localhost:8080/test/hello/paramTest0?userName=zhang&userName=li&id=9&userName=shit
浏览器显示:9
说明浏览器中只要有输入需要的参数即可,而不管是否包含多余的参数,且没有规定顺序。
③在浏览器中输入:在浏览器中输入:http://localhost:8080/test/hello/paramTest0?id=6
显示为:6
这个就不解释了。
#########################################分隔符##################################################
再看第二个映射方法的定义:
@RequestMapping("/paramTest")
public @ResponseBody String paramTest(@RequestParam(name="userName", required = false) String[] userNames, Long id){
String result = "";
if(userNames != null){
for(int i=0;i<userNames.length;i++){
result += userNames[i] + "#";
}
}
result += id;
return result;
}
①然后在浏览器输入:然后在浏览器输入:http://localhost:8080/test/hello/paramTest?userName=zhang&userName=li&id=5&userName=fuck
显示为:zhang#li#fuck#5
由此引申出:首先URL请求的参数部分可以有多对参数的参数名一样,如上面的userName,且它们中间可以用其它参数隔开
(上面用了id=5隔开)而不会影响这几个参数名一样的参数值构成“数组”,
相同的参数名的值将会被浏览器变成类似userName="zhang,li,fuck",告诉服务器这是个数组,这里的元素值的顺序则是跟在
URL请求中的顺序是对应的。
然后看我们方法参数里的是userNames而非userName,但是仍然显示正确,这是因为RequestParam的name或value属性的
值userName才是和
资源评论
weixin_38682518
- 粉丝: 3
- 资源: 935
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Screenshot_20240427_031602.jpg
- 网页PDF_2024年04月26日 23-46-14_QQ浏览器网页保存_QQ浏览器转格式(6).docx
- 直接插入排序,冒泡排序,直接选择排序.zip
- 在排序2的基础上,再次对快排进行优化,其次增加快排非递归,归并排序,归并排序非递归版.zip
- 实现了7种排序算法.三种复杂度排序.三种nlogn复杂度排序(堆排序,归并排序,快速排序)一种线性复杂度的排序.zip
- 冒泡排序 直接选择排序 直接插入排序 随机快速排序 归并排序 堆排序.zip
- 课设-内部排序算法比较 包括冒泡排序、直接插入排序、简单选择排序、快速排序、希尔排序、归并排序和堆排序.zip
- Python排序算法.zip
- C语言实现直接插入排序、希尔排序、选择排序、冒泡排序、堆排序、快速排序、归并排序、计数排序,并带图详解.zip
- 常用工具集参考用于图像等数据处理
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功