Что лучше всего подходит для преобразования объекта XML в Java?

Мне нужно преобразовать данные XML в объекты Java. Какова была бы наилучшая практика для преобразования этих данных XML в объект?

Идея заключается в получении данных через веб-службу (она не использует WSDL, а только HTTP GET-запросы, поэтому я не могу использовать какую-либо фреймворк), а ответы - в XML. Что было бы лучше всего справиться с этой ситуацией?

Ответы

Ответ 1

Посмотрите XStream. Это может быть не самый быстрый, но это один из самых удобных и простых конвертеров в Java, особенно если ваша модель не сложна.

Ответ 3

Для JMS-проекта мы были сортировки и unmarshalling (переход от java к xml и xml к java) XML, встроенный в TextMessages (свойство строки). Мы попробовали JAXB, Jibx и XMLBeans. Мы обнаружили, что XMLBeans лучше всего работают для нас. Быстрая, легко настраиваемая, хорошая документация и простая интеграция Maven.

Ответ 4

Я использовал и буду продолжать использовать JDOM → www.jdom.org

Ответ 5

Другой вариант - Sax Parser. Это процедурный, т.е. Шаблон посетителя, но если xml достаточно легкий (и даже средний вес), я нашел, что это очень полезно для этого.

Ответ 6

JAXB API, который поставляется на Java (встроен).

Ответ 7

Я использовал JIBX в модуле MQ. Он работает очень хорошо. Ant config прост. Использовал конвертер Xsd2Jibx для создания файлов привязки и Java beans из схемы XML. Marshalling и un-marshalling позволяют указать параметр набора символов. В моем проекте было полезно обрабатывать пользовательский набор символов. Но я нашел проблему в компиляторе привязки. Если Java bean имеет более длинное имя пути, он генерирует файл класса с более длинным именем файла, что вызовет проблему в Windows XP (максимальное ограничение длины файла).

Я не использовал другие API. Поэтому я не пытаюсь сравнивать с другими. Если вы решили использовать JIBX, я надеюсь, что это будет полезно.

Подробнее см. веб-сайт JIBX

Ответ 8

Я также использовал XStream, он прост в использовании и настраивается. Вы можете добавить свои собственные преобразователи, и это было очень удобно для меня...

Ответ 9

Так удивил, что больше людей не упомянули Jibx. Удивительная библиотека, и я думаю, что намного проще использовать, чем Jaxb. Производительность также потрясающая!

Ответ 10

Для этого вы также можете рассмотреть apache bitwixt и простую структуру для xml