我有两组生成的Java类(每组都有对应的ObjectFactory),我想将它们合并为一组以同时使用。
是否可以在JAXB中使用两个ObjectFactories(两个类标记为@XmlRegistry)?
类是由
maven-jaxb2-plugin(版本0.8.3)
JDK:1.6.0_43
提前致谢!
最佳答案
使用两个ObjectFactory
类
是的,您可以使用多个ObjectFactory
类。在您的代码中,您将需要打包至少一个引用。用@XmlRegistry
注释的类不必称为ObjectFactory
,但是JAXB从XML Schema生成的类总是这样。
JAXB可以合并ObjectFactory
类吗
否,原因如下:
它引入了可能的方法名称冲突,然后JAXB必须为其提供冲突解决机制。
在一个或多个程序包名称上创建JAXBContext
时,它将在该程序包中查找ObjectFactory
类以从中导出元数据。减少ObjectFactory
类的数量可以解决这个问题。
最终,它不会使您的代码更容易。
您可以手动合并它们吗
是。您只需要注意,如果要通过包名称创建JAXBContext
,则会拾取您的ObjectFactory
。
关于java - 尝试使用JAXB时,对象工厂可能很少吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24674778/