@requestParam 注解

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;
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值