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のMOXyJAXB実装を使用して、これを実現できます。

ABC

埋め込みIDのマーシャル/アンマーシャルをクラス@XmlPath(".")と同じレベルにするために使用できます。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 に答える