一尘不染

Spring REST消耗JSON大写与小写

spring-mvc

我正在尝试创建简单的Web服务,即从URL读取JSON并将其返回。我遵循了spring.io教程。我可能缺少有关命名约定的内容?

我使用的JSON没有很好的命名约定。有些值是大写的,有些是小写的。我了解与restTemplate正确匹配后,需要遵循这些名称。

我的对象结构:

public class Page {
private String name; //works
private String about; // works
private String PHONE; //does not work
private String Website; //does not work

//getters and setters
}

如果我将它们更改为公开,它们将开始工作。

public class Page {
private String name; //works
private String about; // works
public String PHONE; //works
public String Website; //works

//getters and setters
}

这是我使用的代码部分

@RequestMapping(value = "/Test")
public Bubble getBubbleInfo(){
RestTemplate restTemplate = new RestTemplate();
Page page= restTemplate.getForObject("myURL", Page.class);
    return page;
}

我缺少什么?看起来使用了私有必需的经典lowerUpper约定,但是如果我更改,它将无法与JSON正确匹配。我能以spring命名吗?

//spring, this is PHONE
public String phone;

非常感谢。


阅读 340

收藏
2020-06-01

共1个答案

一尘不染

您可以使用@JsonProperty批注覆盖变量名称。

@JsonProperty("phone")
public String PHONE;
2020-06-01