Фреймворк JiBX предлагает решение, аналогичное тому, которое Hibernate предоставляет для ORM: Определение привязки определяет правила преобразования ваших Java-объектов в XML или из XML. После подготовки привязки и компиляции классов компилятор привязки JiBX расширяет файлы классов и привносит код для преобразования экземпляров классов из XML или в XML.

Дополнительную информациию о JiBX см. на веб-сайте JiBX. Интеграционные классы Spring находятся в пакете org.springframework.oxm.jibx.

Использование JibxMarshaller

Класс JibxMarshaller реализует интерфейс Marshaller и Unmarshaller. Для работы ему требуется имя класса, предназначенного для маршализации, которое можно задать с помощью свойства targetClass. Дополнительно можно задать имя привязки, установив свойство bindingName. В следующем примере мы привязываем класс Flights:

<beans>
    <bean id="jibxFlightsMarshaller" class="org.springframework.oxm.jibx.JibxMarshaller">
        <property name="targetClass">org.springframework.oxm.jibx.Flights</property>
    </bean>
    ...
</beans>

JibxMarshaller сконфигурирован для одного класса. Если нужно маршализировать несколько классов, то нужно сконфигурировать несколько экземпляров JibxMarshaller с разными значениями свойства targetClass.

Пространство имен XML-конфигурации

Тег jibx-marshaller конфигурирует org.springframework.oxm.jibx.JibxMarshaller, как показано в следующем примере:

<oxm:jibx-marshaller id="marshaller" target-class="org.springframework.ws.samples.airline.schema.Flight"/>

В следующей таблице описаны доступные атрибуты:

Атрибут Описание Обязательный

id

Идентификатор маршализатора

Нет

target-class

Целевой класс для этого маршализатора

Да

bindingName

Имя привязки, используемое этим маршализатором

Нет