我对JAXB / MOXy专家提出了一个问题:
为什么我应该扩展MetadataSourceAdapter
以将XML映射文件与bean相关联,而不是直接在JAXBContext中加载映射文件?
答案 0 :(得分:0)
简答
为什么我应该扩展MetadataSourceAdapter来关联XML映射 带有bean的文件,而不是直接加载中的映射文件 JAXBContext?
你不应该。如果您的元数据位于映射文件中,那么您应该以这种方式使用它:
Map<String, Object> properties = new HashMap<String, Object>(1);
properties.put(JAXBContextFactory.ECLIPSELINK_OXM_XML_KEY, "com/example/oxm.xml);
JAXBContext jc = JAXBContext.newInstance("com.example", Foo.class.getClassLoader() , properties);
我应该何时延长MetadataSourceAdapter
?
MetadataSource
接口和框架MetadataSourceAdapter
实现允许您将元数据作为与映射文档对应的Java对象模型传递。使用JAXB从映射文档的XML Schema生成此对象模型。当您想以编程方式构建元数据时,它非常有用。以下是我博客中的一个示例,演示了如何使用它。