我有课:
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "ClassFqn", propOrder = { <some properties> })
public class ClassFqn
{
//... Here should be fields, constructor and logic
}
对象是不可变的,我使用缓存对象池工厂而不是直接创建。
在为这些对象执行JAXB反序列化时,我可以使用此池工厂吗?
答案 0 :(得分:2)
有几种方法可以支持这种用例。
@XmlType
指定工厂类别&amp;方法您可以使用@XmlType
注释指定工厂类和方法:
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(
name = "ClassFqn",
propOrder = { <some properties> }
factoryClass=ClassFqnFactory.class,
factoryMethod="createClassFqn")
public class ClassFqn
{
//... Here should be fields, constructor and logic
}
了解更多信息
XmlAdapter
也可以利用XmlAdapter
。基本上,您将数据读入临时对象,然后实现XmlAdapter
以使用您自己的机制来创建最终对象。
了解更多信息