首页 > 学院 > 开发设计 > 正文

@requestParam 注解

2019-11-08 18:46:31
字体:
来源:转载
供稿:网友

sPRing MVC中,后台控制层获取前台的传值主要有两种方式, (1),利用 request.getParameter(“xx”);可以获取前台的所传的值 (2),使用spring MVC的@requestParam注解 以下具体详解: 前端页面:

<form action="test2.do" method="post"> text1:<input type="text" name="text1" value = "text1"><br> text2:<input type="text" name="text2" value = "text2"><br> text3:<input type="text" name="text3" value = "text3"><br> <input type="submit" value="确定"> </form>

controller:

@RequestMapping("/test2") public String gototest2(@RequestParam String text1 , HttpServletRequest req){ System.out.println("text1:"+text1); //点击确定后输出 text1 String text2= req.getParameter("text2"); System.out.println("text2:"+text2)); //点击确定后输出 text2 return null; }

这里就验证了这两种方式,controller都可以接受到前台所传的参数值。 @requestParm 注解还有其他的一些属性 value: 指定value属性,当前台没有哪个标签的name属性和value相同时,则接受到的值为null,否则取值为标签name属性和value值相同的值,一般与required属性一起使用。 required: 指定required属性,就两个取值true或false,表示的是是否需要有与value属性值一致的标签的name值,默认为true,如果没有标签的name值和value值一致,会报错。 “ HTTP Status 400 - Required String parameter ‘aa’ is not present ” name: 指定name属性,当name的值是前台某个标签的name值时,那么所传递过来的值就是该标签对应的值,比如,前台页面还是上面的页面,controller如下:

@RequestMapping("/test2") public String gototest2(@RequestParam(name="text3") String text1 ){ System.out.println("text1:"+text1); //点击确定后输出 text3 }

defaultValue: 指定defaultValue属性,表示当设置value属性时,前台没有哪个标签的name属性值和value属性值相同,则所接收的值就是defaultValue属性所设置的值,比如,前台页面还是上面的页面,controller如下:

@RequestMapping("/test2") public String gototest2(@RequestParam(defaultValue="aa",value="bb",required=true)String text1,HttpServletRequest req){ System.out.println("text1:"+text1); //点击确定后输出 aa return null; }
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表