我正在尝试创建简单的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;
非常感谢。
您可以使用@JsonProperty批注覆盖变量名称。
@JsonProperty("phone") public String PHONE;