JAXB按需解组

时间:2015-06-11 18:33:45

标签: java xml jaxb

假设我有一个非常大的XML文件要解组,比如2 MB。我不想解组该文件,最终得到(aprox。)内存中2 MB的对象。

相反,我希望按需解组部分文件(即,当我浏览对象结构时)并清理我已经读过的对象的引用,使它们可用于垃圾收集器。

是否有可能以某种方式调整JAXB实现,而不是完全一次解组XML?

2 个答案:

答案 0 :(得分:1)

看一下这个解决方案:Partial Unmarshalling of an XML using JAXB to skip some xmlElement

创建了一个专家类,以提供一种读取部分xml的机制。

答案 1 :(得分:1)

可以找到一个综合示例here

它使用StAX前进到xml文件中的正确位置,使用JAXB来解组域对象。