小编dav*_*ave的帖子

JAXB - 解组多态对象

我给了看起来像的XML(当然还有很多属性):

<inventory>
  <item kind="GRILL" tag=123 brand="WEBER"/>
  <item kind="CAR" tag=124 make="FORD" model="EXPLORER" />
</inventory>
Run Code Online (Sandbox Code Playgroud)

有十几种不同的种类.我正在使用注释来映射到看起来像这样的java类:

@XmlRootElement(name="inventory")
public class Inventory {
  @XmlElement(name="item")
  public List<Item> itemList = new LinkedList<Item>;
}
abstract public class Item {
  @XmlAttribute public int tag;
}
public class Grill extends Item {
  @XmlAttribute public string brand;
}
public class Car extends Item {
  @XmlAttribute public string make;
  @XmlAttribute public string model;
}
Run Code Online (Sandbox Code Playgroud)

如何让JAXB根据"kind"字段创建子类Item对象?

java jaxb

5
推荐指数
1
解决办法
5071
查看次数

标签 统计

java ×1

jaxb ×1