Java Jackson JSON XML-序列化为XML时使用不同的名称
当我的元素序列化为XML时,我希望它的名称不同(例如“Java Jackson JSON XML-序列化为XML时使用不同的名称,java,json,jersey,jackson,jax-rs,Java,Json,Jersey,Jackson,Jax Rs,当我的元素序列化为XML时,我希望它的名称不同(例如“fooXml”),而JSON的名称不同(例如“fooJson”)。可能吗 我使用的XML注释如下: @XmlElements({ @XmlElement(type = Foo.class, name = "fooXml"), }) private SortedSet<Foo> fooSet; 但它总是忽略JSON注释并序列化为XML格式(fooXmlname) 我该怎么做 编辑:我正在使用Jersey j
fooXml
”),而JSON的名称不同(例如“fooJson
”)。可能吗
我使用的XML注释如下:
@XmlElements({
@XmlElement(type = Foo.class, name = "fooXml"),
})
private SortedSet<Foo> fooSet;
但它总是忽略JSON注释并序列化为XML格式(fooXml
name)
我该怎么做
编辑:我正在使用Jersey json。好吧,我需要同样的功能,并找到了一个解决方案:
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
@JsonProperty("MyJsonName")
@JacksonXmlProperty(localName = "MyXmlName")
private MyProperty myProperty;
对我来说,myProperty将位于Json中的“MyJsonName”字段和XML中的“MyXmlName”字段中。它是序列化为XML而不是Json,还是仅序列化为Json并使用XML名称?@Feroc Json使用XML名称。
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
@JsonProperty("MyJsonName")
@JacksonXmlProperty(localName = "MyXmlName")
private MyProperty myProperty;