В настоящее время я использую EMf для чтения ~ 400 XML-файлов. Каждый файл содержит около 100 000 строк и состоит из описательных данных (~ 10%, что-то вроде идентификаторов и ссылок на другие элементы) и реальных данных (~ 90%, длинных строк / текстов).
Моя проблема - когда я читаю все файлы, я получаю OutOfMemoryExceptions. Моя идея решить эту проблему: загружать только идентификаторы и т. Д., И если пользователь пытается получить доступ к данным, которые в данный момент не загружены, он будет загружен в фоновом режиме.
Есть идеи, как этого добиться с помощью EMF или XMLBeans?
редактирование:
мой XML имеет такую структуру:
<A>
<B>
<C></C>
<C></C>
</B>
<B>
<C></C>
</B>
</A>
Я хочу загрузить корневой узел в любом случае. В этом примере я хочу пропустить узлы C, чтобы мое дерево объектов выглядело так:
A
|-B
\-B