我正在关注本教程:https://spring.io/guides/gs/consuming-rest/ 它正在使用JSON对象,如下所示:
{
type: "success",
value: {
id: 10,
quote: "Really loving Spring Boot, makes stand alone Spring apps easy."
}
}
我有一个问题。在Value.java中,我们有两个变量:
private Long id;
private String quote;
我的问题是Spring如何知道将变量id绑定到JSON中的id属性,以及如何知道将quote变量绑定到JSON中的quote属性。我试着让两个字符串都认为Spring可能会自动确定变量的数据类型,然后进行绑定,但这并没有什么不同。我想也许如果变量名称与属性相同,那就是它如何进行绑定,所以我尝试更改变量名称,这也没有什么区别。然后我认为它可能是变量的顺序所以我切换变量所以它变成这样:
private String quote;
private String id;
我故意将它们作为String。但仍然不知何故,id属性被绑定到变量id和quote属性以引用变量。
所以有人可以告诉我,Spring如何确定哪个属性绑定到哪个变量。
答案 0 :(得分:1)
因为它的杰克逊,默认行为是使用相应的getter / setter所以我的镜头是你更改了字段名称而不是getter / setter名称。