[英]JAX-RS/JAXB JSON to POJO - Ignore fields in JSON that don't exist in the POJO
我正在开发一个API,该API需要能够处理PUT / POST上的JSON有效负载,这可能是已知POJO的超集。
例如:
@XmlRootElement
public FruitCounter
{
int numberOfApples;
int numberOfOranges;
public int getNumberOfApples()
{
return this.numberOfApples();
}
public int setNumberOfApples(int numberOfApples)
{
this.numberOfApples = numberOfApples;
}
public int getNumberOfOranges()
{
return this.numberOfOranges();
}
public int setNumberOfOranges(int numberOfOranges)
{
this.numberOfOranges = numberOfOranges;
}
}
执行GET时,将沿着以下几行产生JSON:
{
numberOfApples: 4,
numberOfOranges: 7
}
我们需要能够像下面这样处理JSON负载,以更新苹果和橙子的计数,但不对梨做任何事情。
{
numberOfApples: 9,
numberOfOranges: 19,
numberOfPears: 21
}
有什么干净的方法可以做到这一点吗?
在类顶部添加@JsonIgnoreProperties(ignoreUnknown = true)
@JsonIgnoreProperties(ignoreUnknown = true)
@XmlRootElement
public FruitCounter
{
int numberOfApples;
int numberOfOranges;
public int getNumberOfApples()
{
return this.numberOfApples();
}
public int setNumberOfApples(int numberOfApples)
{
this.numberOfApples = numberOfApples;
}
public int getNumberOfOranges()
{
return this.numberOfOranges();
}
public int setNumberOfOranges(int numberOfOranges)
{
this.numberOfOranges = numberOfOranges;
}
}
还要检查这个问题,这似乎是同样的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.