springmvc中 @RequestBody 接收参数问题

从前台用js向 springmvc中传递 json。在controller中转换为java对象需要用 @RequestBody 注解。但是传递时有几个问题可能会导致无法访问。

1.ajax中必须用json对象:JSON.stringify({"name":name,"age":age,"sex":sex})

2.ajax中必须设置 contentType:"application/json",

3.否则会报 415或者400错误。

直接上代码:

前台:



  
    
  
  
  
name:
sex:
age:

controller

   @ResponseBody
    @RequestMapping("/test03")
    public Map test03(@RequestBody User user){

        Map map = new HashMap<>();
        if(user!=null){
            map.put("msg","1");
        }else{
            map.put("msg","0");
        }

        return map;
    }

实体类

public class User {

    private String name;
    private int age;
    private String sex;

    public User() {
    }

    public User(String name, int age, String sex) {
        this.name = name;
        this.age = age;
        this.sex = sex;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }


    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }
}

转载于:https://www.cnblogs.com/jixu8/p/11246183.html

你可能感兴趣的:(springmvc中 @RequestBody 接收参数问题)