草庐IT

XMLIDRef

全部标签

java - moxy jaxb 中的 XmlAdapter 和 XmlIDREF

我正在尝试使用MOXyJAXB来序列化类A,它看起来像:@XmlAccessorType(XmlAccessType.NONE)@XmlRootElementpublicclassA{privateMapfooBar=newHashMap();privateSetfoos=newHashSet();@XmlJavaTypeAdapter(FooBarMapAdapter.class)publicMapgetFooBar(){returnfooBar;}publicvoidsetFooBar(MapfooBar){this.fooBar=fooBar;}@XmlElementpublic

xml - JAXB 能否首先通过包含进行编码,然后通过@XmlIDREF 进行编码以供后续引用?

我想知道是否可以注释我的类,以便编码器第一次遇到一个对象时,它会生成一个适当类型的XML元素,但是任何其他任何对该对象的后续引用都将具有一个XMLIDREF条目已创建? 最佳答案 您可以利用JAXB的XmlAdapter的概念来执行如下操作:输入.xml以下是我将用于此示例的XML文档。第3个phone-number条目是对第一个phone-number条目的引用,第5个phone-number条目是对第四:555-AAAA555-BBBB555-WORK1234客户客户类维护一个PhoneNumber对象的集合。PhoneNumb