@PathVariable与@RequestParam的用法

@PathVariable

@RequestMapping(value = "/t1/add/{a}/{b}",method = RequestMethod.GET)
    public String he(Model model,@PathVariable(value = "a")int a,@PathVariable(value = "b") int b){
        model.addAttribute("msg",a+b);
        return "hello";
    }
@PathVariable(value = "a")int a,@PathVariable(value = "b") int b
//value="a"与value="b"对应地址栏add后面的/1/1

运行结果及地址栏如下
在这里插入图片描述

不加@的用法

@RequestMapping(value = "/t2/add",method = RequestMethod.GET)
    public String he1(Model model,int a,int b)
    {
        model.addAttribute("msg",a+b+200);
        return "hello";
    }

参数int a,int b对应着地址栏a=2&b=3,可以将地址栏?后面的参数映射到方法俩面的参数,如下图地址栏所示

在这里插入图片描述

假如地址栏的参数与方法参数不一致就会出错,如下图地址栏所示

在这里插入图片描述

@RequestParam用法

另外如果你希望地址栏的参数是自订的,需要和方法的参数不一致,但是又能把地址栏的参数绑定到方法的参数上时,就需要@RequestParam注解,value属性就是你自定义的参数名称
 @RequestMapping(value = "t3/add",method = RequestMethod.GET)
    public String he2(Model model, @RequestParam(value = "num1") int a,@RequestParam(value = "num2") int b)
    {
        model.addAttribute("msg",a+b+100);
        return "hello";
    }

如下图所示
在这里插入图片描述

前端传过来一个对象怎么办?

不着急

 @RequestMapping(value = "add",method = RequestMethod.GET)
    public String he2(Model model,对象 duixiang)
    {
        System.out.println(duixiang);
        return "hello";
    }

对应前端传过来的参数如下
在这里插入图片描述
你会发现对象也能输出

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值