3

我有从 eclipseLink 创建的实体。我正在尝试使用相同的对象来生成一个 xml。我在一个类中有一个主键引用,我不确定我需要使用什么注释来获取所需的 xml。我有

public class ABC implements Serializable {
private static final long serialVersionUID = 1L;

@EmbeddedId
private NamePK id;

@XmlElement
private String address1;

    @XmlElement
private String address1;

... }

 public class NamePK implements Serializable {
//default serial version id, required for serializable classes.
private static final long serialVersionUID = 1L;

@Column(name="county")
@XmlTransient
private String county;

@Column(name="NAME")
@XmlElement
private String name;

……

}

NamePk 上的注释应该如何让我获得 xml 输出为

 <name>XXX</name>
 <Address1>YYY</Address1>
 <Address2>ZZZ</Address2>

我需要在 PK 的两个级别上进行注释吗?(班级级别和参考)

谢谢

4

1 回答 1

4

注意: 我是EclipseLink JAXB (MOXy)的负责人,也是 JAXB 2 ( JSR-222 ) 专家组的成员。

您可以使用 EclipseLink 中的 MOXy JAXB 实现来完成此操作:

美国广播公司

您可以使用@XmlPath(".")将嵌入式 ID 编组/解组与您的班级处于同一级别ABC

public class ABC implements Serializable {

    private static final long serialVersionUID = 1L;

    @EmbeddedId
    @XmlPath(".")
    private NamePK id;

    @XmlElement
    private String address1;

    @XmlElement
    private String address1;

}

了解更多信息

于 2011-08-18T19:41:42.220 回答