@RequestParam 注解的使用
Posted libin6505
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了@RequestParam 注解的使用相关的知识,希望对你有一定的参考价值。
@RequestParam 注解的使用
前言
在SpringMvc后台进行获取数据,一般是两种。
1.request.getParameter(“参数名”)
2.用@RequestParam注解获取
后台代码示范
@RequestMapping("/") public String Demo1(@RequestParam String lid){ System.out.println("----"+lid); return null; }
前台页面
<input type="text" name="lid" /> <!-- 这时输出为10 --> Console输出界面 ----10
springmvc会自动根据参数名字来注入,所以要名字一致,不然不会注入
参数名字不一致
@RequestMapping("/") public String Demo1(@RequestParam(value="lid") String id){ System.out.println("----"+id); return null; }
前台页面
<input type="text" name="lid" /> <!-- 这时输出为10 --> Console输出界面 ----10
参数名字不一致的话,需要在@RequestParam后面指定参数名字,才能为后面的参数进行赋值。
设置默认值
@RequestMapping("/") public String Demo1(@RequestParam(value="lid",defaultValue="ste") String id){ System.out.println("----"+id); return null; }
注意事项
@RequestMapping("/") public String Demo1(@RequestParam(value="lid") int id){ System.out.println("----"+id); return null; }
前台页面
<input type="text" name="lid" /> <!-- 这时输出为10 --> Console输出界面 ----10
如果要@RequestParam为一个int型的数据传值,假如前端并未输入,那么将会为int型的数据赋值为null。显然,这是不允许的,直接报错。
可以通过required=false或者true来要求@RequestParam配置的前端参数是否一定要传
// required=true,则参数必须要传 @RequestMapping("/") public String Demo1(@RequestParam(value="lid",required=true) int id){ System.out.println("----"+id); return null; }`
如果required为false,那么默认为参数赋值为null
以上是关于@RequestParam 注解的使用的主要内容,如果未能解决你的问题,请参考以下文章
@RequestParam 注解的使用——Spring系列知识学习笔记
Spring MVC 的@RequestParam注解和request.getParameter("XXX")
@PathVariable注解和@RequestParam注解的区别