3

このようにドーザーを使用してフィールドを除外したい:

    <mapping>
    <class-a>com.core.model.Model</class-a>
    <class-b>com.core.model.ModelIS</class-b>
    <field>
        <a>person</a>
        <b>person</b>
        <a-hint>com.core.Person</a-hint>
        <b-hint>com.core.PersonIS</b-hint>
    </field>
        <field-exclude>
                    <a>age</a>
                    <b>age</b>
            </field-exclude>
    </mapping>

したがって、クラスModelにはPersonオブジェクトが含まれ、Personにはageオブジェクトがあります。このマッピングから年齢を除外するにはどうすればよいですか?前もって感謝します。

4

1 に答える 1

8

<field-exclude>は正しいアプローチですが、適用されるマッピング、この場合はモデルクラスで機能します。

モデルクラスにageオブジェクトがある場合(マッピングが与えられた場合)、それは除外されます。ただし、ageオブジェクトはオブジェクトツリーのより深い位置にあり、モデル内の人物フィールドにあるため、人物フィールドをマッピングするときに適用する必要があります。

マッピングを次のものに置き換えれば、機能するはずです。

<mapping>
    <class-a>com.core.model.Model</class-a>
    <class-b>com.core.model.ModelIS</class-b>
    <field>
        <a>person</a>
        <b>person</b>
        <a-hint>com.core.Person</a-hint>
        <b-hint>com.core.PersonIS</b-hint>
    </field>
</mapping>

<mapping>
    <class-a>com.core.Person</class-a>
    <class-b>com.core.PersonIS</class-b>
    <field-exclude>
        <a>age</a>
        <b>age</b>
    </field-exclude>
</mapping>
于 2012-06-29T08:31:13.413 に答える