gpt4 book ai didi

java - 使用 JAXB 解析没有容器标签的抽象对象

转载 作者:太空宇宙 更新时间:2023-11-04 14:26:38 24 4
gpt4 key购买 nike

我想使用 JAXB 生成非常具体的 XML 模式,然后解析与该模式匹配的 XML 文档。我有 AbstractViewElement 类,它是 XML 中显示的所有内容的基础。然后是布局类和小部件:

public class Layout extends AbstractViewElement {
private List<AbstractViewElement> children;
...
}

public class TextField extends AbstractViewElement {
...
}

public class Button extends AbstractViewElement {
...
}

现在,我希望能够解析看起来或多或少像这样的 XML 文档:

<ucl:Layout>
<ucl:Button/>
<ucl:TextField/>
</ucl:Layout>

所以,基本上我想摆脱布局类通常需要的“children”标签。我也不知道如何在 JAXB 中设置 xml 命名空间,所以...帮忙?

最佳答案

您可以在 children 属性上使用 @XmlElementRef 注释。然后使用 @XmlRootElement 注释 AbstractViewElement 的所有子类。

对于命名空间,您可以使用包级别 @XmlSchema 注释。

关于java - 使用 JAXB 解析没有容器标签的抽象对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26603559/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com