Какая библиотека Java OXM лучше? - PullRequest
6 голосов
/ 05 января 2009

Несмотря на то, что я уже некоторое время являюсь разработчиком, мне посчастливилось избежать большой работы с XML. Итак, теперь у меня есть проект, в котором я должен взаимодействовать с некоторыми веб-сервисами, и хотел бы использовать какое-то решение для преобразования объектов в XML.

Единственный, кого я знаю, это JAXB. Это лучшее, чтобы пойти с? Есть ли другие рекомендации?

Одна загвоздка - я застрял на Java 1.4, поэтому ничего не могу сделать с аннотациями.

Ответы [ 4 ]

10 голосов
/ 08 июля 2010

JAXB - лучший выбор:

EclipseLink JAXB (MOXy) - лучшая реализация:

MOXy - это реализация JAXB с расширениями

MOXy имеет внешний файл конфигурации (на основе аннотаций JAXB с расширениями):

Имеет отображение на основе XPath, для глубокого отображения:

Предназначен для обработки сопоставленных объектов ORM, включая поддержку двунаправленных связей:

6 голосов
/ 05 января 2009

Если вы звоните в веб-сервис с WSDL, JAXB - абсолютно лучший вариант. Взгляните на wsimport, и через 10 минут вы приступите к работе.

Я не думаю, что JAXB 2.0 будет возможен на Java 1.4. Возможно, вам придется использовать Axis вместо:

java -cp axis-1.4.jar;commons-logging-1.1.jar;commons-discovery-0.2.jar;jaxrpc-1.1.jar;saaj-1.1.jar;wsdl4j-1.4.jar;activation-1.1.jar;mail-1.4.jar org.apache.axis.wsdl.WSDL2Java http://someurl?WSDL

Это создаст схожие заглушки с JAXB.

Если у вас нет WSDL или XSD, вы всегда можете сгенерировать один .

3 голосов
/ 19 ноября 2009

JIBX - известный по производительности

JAXB2 - Простота использования

Castor - Простота использования

другие - XMLBean, Xstream

3 голосов
/ 05 января 2009

Там XStream . Кажется, я помню, что использовал это много лет назад, и это было прекрасно Не могу сказать, что у меня достаточно опыта, чтобы рекомендовать его за или против, но стоит проверить это как альтернативу.

...