微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JAXB / XJC父子父导航

如何解决JAXB / XJC父子父导航

您可以创建一个void afterUnmarshal(Unmarshaller, Object parent)被称为…的方法,在解组后,根据需要设置对象树。

解决方法

我想在子对象和父对象之间的类中使用双向导航方法。在我的情况下,IDREF是不够的,因为我不想指定父代的ID。要清楚,从这样的xsd:

<complexType name="A">
    <xs:sequence>
        <element name="b" type="B" minOccurs="0" maxOccurs="unbounded"></element>
    </xs:sequence>
    <attribute name="id" type="ID"></attribute>
</complexType>
<complexType name="B">
    <attribute name="id" type="ID"></attribute>
</complexType>

我希望类看起来像这样:

class A {
    ...
    public List<B> getB() { ...}
    ...
   }
class B {
    ...
    public A getA() {
    ...
}

而且我的xml必须看起来像这样:

<a id="a1">
    <b id="b1"/>
    <b id="b2"/>
    ...
</a>

解组后,我希望能够通过b.getA())从A导航到Bs,从B导航到A!这是一个非常基本的功能,但我找不到实现此目的的简单方法…

任何想法 ??

提前致谢

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。