1

嘿嘿,

我目前在使用 JAXB 序列化过程时遇到问题。jaxb 版本 2,用于序列化属性。

是否可以在“package-info.class”中添加多个包级别注释?目前我正在手动创建这个文件,其中已经有一个“适配器条目”,它必须留在那里。虽然我像个白痴一样搜索,但每个示例都只有一个条目,但我想这是不可能的,因为语义应该更灵活,允许多个包级别注释而不仅仅是一个。

问题是,我在类中的每个映射成员上使用 @XmlJavaTypeAdapter(AdapterForMap.class),但映射实际上包含另一种类型(作为值),比如说 Font,它需要一个适当的 xml 适配器. 目前我无法使用这种字体适配器,因为“package-info.class”已经有一个条目。

提前致谢!:)

4

1 回答 1

3

@XmlJavaTypeAdapters用于在包级别注册许多@XmlJavaTypeAdapter.

包信息

@XmlJavaTypeAdapters({
    @XmlJavaTypeAdapter(type=DateTime.class, value=DateTimeAdapter.class),
    @XmlJavaTypeAdapter(type=DateMidnight.class, value=DateMidnightAdapter.class),
    @XmlJavaTypeAdapter(type=LocalDate.class, value=LocalDateAdapter.class),
    @XmlJavaTypeAdapter(type=LocalTime.class, value=LocalTimeAdapter.class),
    @XmlJavaTypeAdapter(type=LocalDateTime.class, value=LocalDateTimeAdapter.class)
})
package blog.jodatime;

import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapters;    
import org.joda.time.*;

对于一个完整的例子

于 2012-04-18T09:16:06.620 回答