JAXB marshal没有父元素

时间:2013-05-24 06:22:47

标签: jaxb xmladapter

有两个JavaBean A和B.以及2个字符串C和D. 结构是

A
--B
----C
----D

我可以将对象A编组为Xml

<A>
  <B>
   <C>ccc</C>
   <D>ddd</D>
  </B>
</A>

在某些情况下,我想像这样将A编组为XML

<A>
   <C>ccc</C>
   <D>ddd</D>
</A>

没有B标签。 可以通过XMLAdapter或其他方式完成。 它是最好的,如果它有一些动态的方式。 感谢。

1 个答案:

答案 0 :(得分:0)

注意:我是EclipseLink JAXB (MOXy)主管,是JAXB (JSR-222)专家组的成员。

您可以在此用例中使用MOXy的@XmlPath扩展名:

import javax.xml.bind.annotation.*;
import org.eclipse.persistence.oxm.annotations.XmlPath;

@XmlRootElement(name = "A")
@XmlAccessorType(XmlAccessType.FIELD)
public class A {

    @XmlPath(".")
    private B b;

}

了解更多信息