JAXB:如何解组不同类型但具有公共父对象的List?

JAXB:如何解组不同类型但具有公共父对象的List?,第1张

JAXB:如何解组不同类型但具有公共父对象的List?

注意: 我是 Eclipselink
JAXB(MOXy)的
负责人,并且是
JAXB(JSR-222)
专家组的成员。

如果将MOXy用作JAXB提供程序,则可以使用MOXy的

@XmlPaths
注释来扩展标准JAXB
@XmlElements
注释,以执行以下 *** 作:

费用

import java.util.List;import javax.xml.bind.annotation.*;import org.eclipse.persistence.oxm.annotations.*;@XmlRootElementpublic class Fees {    @XmlElements({        @XmlElement(type=Commission.class),        @XmlElement(type=FINRAPerShare.class),        @XmlElement(type=SEC.class),        @XmlElement(type=Route.class)    })    @XmlPaths({        @XmlPath("fee[@type='Commission']"),        @XmlPath("fee[@type='FINRAPerShare']"),        @XmlPath("fee[@type='SEC']"),        @XmlPath("fee[@type='Route']")    })    private List<Fee> fees;}

佣金

Fee
接口的实现通常会被注释。

import javax.xml.bind.annotation.*;@XmlAccessorType(XmlAccessType.FIELD)public class Commission implements Fee {    @XmlAttribute    private String name;    @XmlAttribute    private String rate;}

想要查询更多的信息

  • http://blog.bdoughan.com/2011/03/map-to-element-based-on-attribute-value.html
  • http://blog.bdoughan.com/2010/10/jaxb-and-xsd-choice-xmlelements.html
  • http://blog.bdoughan.com/2011/05/specifying-eclipselink-moxy-as-your.html


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5489059.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存