簡體   English   中英

如何使用JAXB將復雜的XML元素映射到Java類屬性

[英]How to map complex XML element to Java class property using JAXB

我需要使用JAXB將我的XML片段映射到Java類,但是有一個棘手的情況。 我有以下XML:

<person>
  <name part="first">Richard</name>
  <name part="last">Brooks</name>
</person>

並需要將它映射到下面的類

public class Person {

   private String firstName;
   private String lastName;
}

你能幫我弄清楚JAXB注釋是否可行?

您可以使用MOXy執行此操作 ,請參閱@XmlPath

@XmlPath("name[@part='first']/text()")
private String firstName;

@XmlPath("name[@part='last']/text()")
private String lastName;

相關問題:

這是您可以采用的一種方法,但需要您為Name創建一個單獨的類:

@XmlRootElement
public class Person {
    @XmlElement(name="name")
    private List<Name> names;
    ...
}

public class Name {
   @XmlAttribute
   private String part; //would be set to "first" or "last"

   @XmlValue
   private String nameValue;
   ...
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM