后端@RequestBody异常although at least one Creator exists): no String-argument constructor/factory metho

序言:

此次测试先弄清楚使用Ajax来传输不同类型的数据:文本、对象、文件

本来以为是一个无敌简单的Demo测试,想不到在一个地方卡了很久

以前明明使用springboot随随便便就能接收对象,难道是springboot版本更新的问题!!!???

解决方案:实体类中添加将前端的json字符串手动赋值的代码

参考这位老哥的微博,感谢感谢:

https://blog.csdn.net/qq_30162239/article/details/86647164

前端:

var user = {
    "name":"hu一样",
    "age":85
}

$.ajax({
        url:"testUrl",
        type:"post",
        contentType:"application/json",
        // processData: false,
        data: JSON.stringify(user),
        success:function (response) {
            alert("ok" + response);
        }
    });

后端:

@ResponseBody
@RequestMapping("/testUrl")
public String test01(@RequestBody User user){
    System.out.println("user:" + user);
    return "success";
}

实体类:

public class User implements Serializable {
    private String name;
    private Integer age;

    public User() {
    }

    public User(String json) throws JsonProcessingException {
        User user = new ObjectMapper().readValue(json, User.class);
        name = user.getName();
        age = user.getAge();
    }
    ...............

版权声明:本文为qq_42039738原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。