2015-06-11 4 views
0

Скажем, у меня есть очень большой XML-файл для демонтажа, например, 2 МБ. Я не хочу развязывать файл и заканчивать (aprox.) 2 МБ объектов в памяти.JAXB по запросу unmarshalling

Вместо этого я хочу размотать части файла по требованию (т. Е., Когда я перемещаюсь по структуре объекта) и очистить ссылки на объекты, которые я уже прочитал, сделав их доступными сборщику мусора.

Можно ли настроить JAXB-реализацию таким образом, чтобы он автоматически отменял XML по требованию, а не сразу?

+0

Взгляните на это решение: http://stackoverflow.com/questions/16656809/partial-unmarshalling-of-an-xml-using-jaxb-to-skip-some-xmlelement был создан специализированный класс чтобы обеспечить механизм для чтения xml по частям. – marcelobrgomes

ответ

1

Подробный пример можно найти here.

Он использует StAX для перехода в нужное положение в файле xml и JAXB для отмены работы над объектом домена.

Смежные вопросы