java - 防止 JAXB XML 解析上的循环引用

标签 java xml jaxb

我的问题是关于防止使用 XML JAXB 解析在 JPA 实体之间建立双向关系的循环引用的最佳(或首选)实践AB,如下图:

                        A
               ________ |__________
              |                    |
              B                    C
      ________|__________
     |                    |
     A                    A

我通过标记与@XmlTransient的适当关系来解决这个问题。 是否有任何 JAXB 实现可以提供 API 级别的标准解析?

最佳答案

您应该使用@XmlID@XmlIDREF

<小时/>
@XmlAccessorType(XmlAccessType.FIELD)
public class A{
    @XmlAttribute
    @XmlID
    private String id;

    @XmlElement
    private B b;
<小时/>
@XmlAccessorType(XmlAccessType.FIELD)
public class B{
    @XmlAttribute
    @XmlID
    private String id;

    @XmlIDREF
    private A a;
<小时/>

HereBlaise Doughan论坛为例

关于java - 防止 JAXB XML 解析上的循环引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45511434/

相关文章:

xml - 为什么在 Google API 文档中通常建议使用 JSON 而不是 XML?

android - 如何在框架布局或线性布局内创建全屏视频 View

java - Spring Jaxb2Marshaller 外部绑定(bind)文件

java - 将 SOAP 消息解码为 java/或简单地解析 SOAP 消息?

java - 如何向修订实体添加注释?

java - 如何从下拉列表循环中选择所有列表选项并选择每个选项

xml - R getNodeSet中的部分匹配

xsd - 创建一个通用的 xsd 生成类以供其他包使用

java - 再次单击 ImageView

c# - 从 Java POV 学习 C#