如何将JSON字段名称映射到不同的对象字段名称?
Jackson json注释中以下jax-b注释的等效方式是什么?
我需要生成json而不是xml,并且需要了解在jax-b中等效表示的常规jackson批注。
- 重命名字段。
- 使用getter代替字段。
如果json / xml元素名称是Java保留字(例如“ new
”,“ public
”,“ static
”等),则这些功能尤其重要。
因此我们必须将POJO字段分别命名为“ new ”,“ _ public ”,“ _ static”等,
但请使用jax-b批注在生成的XML(和json)元素中将其重命名为“ new”,“ public”,“ static”等。
@XmlAccessorType(XmlAccessType.FIELD)public class Person{
@XmlElement(required = true)
protected String name;
@XmlElement(required = true)
protected String address;
@XmlElement(name = "contractor")
protected boolean _restricted_ ;
@XmlElement(name = "new")
protected boolean _new_ ;
}
(我认为这是在jax-b中完成的方式)
@XmlAccessorType(XmlAccessType.PROPERTY)public class Person{
protected String name;
protected String address;
protected boolean _restricted_ ;
protected boolean _new_ ;
@XmlElement(required = true)
protected String getName() {return name;}
@XmlElement(required = true)
protected String getAddress() {return address;}
@XmlElement(name = "contractor")
protected boolean getRestricted() {return _restricted_;}
@XmlElement(name = "new")
protected boolean getNew(){return _new_;}
}
回答:
可能有点晚了,但是无论如何。
您可以重命名一个属性,只需添加
@JsonProperty("contractor")
默认情况下,Jackson使用getter和setter进行序列化和反序列化。
有关更多详细信息,请访问:http :
//wiki.fasterxml.com/JacksonFAQ
以上是 如何将JSON字段名称映射到不同的对象字段名称? 的全部内容, 来源链接: utcz.com/qa/419234.html