Я получаю XML-файл в качестве входных данных, размер которого может варьироваться от нескольких килобайт до намного большего. Я получаю этот файл по сети. Мне нужно извлечь небольшое количество узлов в соответствии с моим использованием, поэтому большая часть документа для меня бесполезна. У меня нет настроек памяти, мне просто нужна скорость.
Учитывая все это, я пришел к выводу:
Здесь не используется DOM (из-за возможного огромного размера документа, отсутствия требований CRUD и сетевого источника)
Нет SAX, так как мне нужно получить только небольшое подмножество данных.
StaX может быть подходящим вариантом, но я не уверен, что это самый быстрый способ.
JAXB появился как другой вариант - но какой парсер он использует? Я читал, что по умолчанию он использует Xerces (какой тип - push или pull?), Хотя я могу настроить его для использования со Stax или Woodstock в соответствии с этой ссылкой
. Я много читаю, все еще не понимаю, что такое много вариантов! Любая помощь будет принята с благодарностью.
Спасибо!
Edit: Я хочу добавить сюда еще один вопрос: что не так в использовании JAXB здесь?