Отображение XML-данных в / из Java-объектов с помощью Dozer

Проверьте отображение XML-данных в / из Java-объектов, используя dozer.

То есть, учитывая образец XML-файла, сопоставьте его с новыми классами Java с соответствующими методами get/set для различных элементов.

Пример XML-файла приведен ниже:

<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<cXML payloadID="1272549644772.1050674118.000000197@2Vmg9c/TnwT1ZqGdAuiHQvbDmNc=" timestamp="2010-04-29T07:00:44-07:00" version="1.2.020">
        <Header>
                <From>
                        <Credential domain="Test_Code">
                                <Identity>ID_SYSTEM</Identity>
                        </Credential>
                </From>
                <To>
                        <Credential domain="Test_Code">
                                <Identity>ID_SYSTEM</Identity>
                        </Credential>
                </To>
                <Sender>
                        <Credential domain="AribaNetworkUserId">
                                <Identity>test.test@sial.com</Identity>
                                <SharedSecret>sigma123</SharedSecret>
                        </Credential>
                        <UserAgent>Sender Application 1.0</UserAgent>
                </Sender>
        </Header>
</cXML>

Мне нужно сопоставить это с новым классом Java

Пожалуйста, помогите мне.

2 ответа

Решение

Основной dozer Отображение действительно легко, если атрибуты имеют одинаковое имя / тип, они будут отображаться автоматически:

<mapping>
    <class-a>org.dozer.vo.TestObject</class-a>
    <class-b>org.dozer.vo.TestObjectPrime</class-b>
</mapping>

Если у вас есть несколько разных именованных атрибутов:

<mapping> 
    <class-a>org.dozer.vo.TestObject</class-a>
    <class-b>org.dozer.vo.TestObjectPrime</class-b>   
    <field>
      <a>one</a>
      <b>onePrime</b>
    </field>
</mapping>  

Для получения дополнительной информации вы можете найти в руководстве пользователя и примеры XML-отображений

Пример файла dozerMapping.xml. http://dozer.sourceforge.net/schema/beanmapping.xsd">

<mapping map-id="a">
    <class-a>com.java.beans.Employee</class-a>
    <class-b>com.java.beans.Address</class-b>
    <field>
        <a>streetNumber</a>
        <b>streetNumber</b>
    </field>
    <field>
        <a>city</a>
        <b>city</b>
    </field>
    <field>
        <a>state</a>
        <b>state</b>
    </field>
    <field>
        <a>country</a>
        <b>country</b>
    </field>
</mapping>

Другие вопросы по тегам