ajax传递参数与controller接收参数映射关系

Posted elementplay

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ajax传递参数与controller接收参数映射关系相关的知识,希望对你有一定的参考价值。

将ajax的参数传递至后台controller时,data 中的参数名要与controller中的形参保持一致。

前端ajax代码:

 1 $.ajax({
 2      url:"/doLogin",
 3      type:"post",
 4      data:{
 5          "username":$("#username").val();
 6          "password":$("#password").val(),
 7          "code":$("#code").val()
 8      },
 9      success:function(){}       
10 });

 

后台controller代码:

@RequestMapping("/doLogin")
@ResponseBody
public Map<String,Object> doLogin(String username,String password,String code){
    // 省略代码
    ....      
}    

这样做就能将前端传来的数据 一 一对应到controller 的形参中去。

而如果想前端数据的参数名和后台controller 形参不一致,可以使用@RequestParam 注解将自己的形参与前端数据的参数名映射起来。

后台controller代码:

@RequestMapping("/doLogin")
@ResponseBody
public Map<String,Object> doLogin(@RequestParam(value = "username")String users,String password,String code){
    // 省略代码
    ....      
}  

注:前端的data 数据的顺序可以不和后台controller 的形参顺序一致。

以上是关于ajax传递参数与controller接收参数映射关系的主要内容,如果未能解决你的问题,请参考以下文章

ASP Action函数 如何接收前台ajax传递的数据(编辑中。。。)

springMVC数据相关

从 ajax 调用传递到 wcf 的参数被接收为 null

前端ajax异步传值以及后端接收参数的几种方式

如何使用 ajax get 将数据从 View 传递到 Controller 或使用参数在 mvc 中发布

JQuery.Ajax()的data参数传递方式