Re: оптимальный парсер?????
От: Blazkowicz Россия  
Дата: 22.05.07 09:30
Оценка: 1 (1)
Здравствуйте, BOSSSS, Вы писали:

BOS>Уважаемые, разъясните пожалуйсто, какой парсер является оптимальным?

Парсер чего? XML? Ведь есть много разных форматов которые надо парсить.

BOS>С точки зрения скорости обработки, удобный в использовании?

Зависит сугубо от задач. Думаешь откуда столько их разных? У каждого свои фичи и каждый оптимален для своих условий.
Значит основные 3 низкоуровневых типа
1) DOM — удобен в том случае когда дерево XML нужно хитороумно модифицировать. Но для многих решений не подходит совсем из-за требований к размерам XML и производительности вообще. Часто бывает оптимальнее десериализовать XML (через SAX) в Java объекты, модифицировать их, а потом сериализовать обратно в XML.
2) SAX — не очень удобен в использовании. Но при этом его мало волнует размер поступающего XML.
3) StAX / XML pull parsing — почти так же удобен как DOM и быстр как SAX. То есть объединяет лучшее из двух подходов. Но я его ещё не использовал на практике.

Потом идут высокоуровневые надстройки над этими типами.
1) Обертки. (JDOM, DOM4J) предоставляют более удобный API. Но при этом близки к низкоуровневой работе с XML.
2) Мапперы. (JiBX, Digester, Castor) — требуют дополнительной работы чтобы указать как именно XML преобразовать в нужные объекты. Основной плюс — промежуточный слой в виде маппинга. Который почти разрывает зависимость между структурой объектов и структурой XML.
3) Сериализаторы (XStream, XMLEncoder/XMLDecoder и многие другие). С такими инструментами даже не нужно напрягаться, создавая маппинг. Они сами сделают какой-то XML из объекотв или какие-то объекты из XML. Недостаток — сильная зависимость струтур XML и объектов.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.