2012-06-27 46 views
3

我要排除使用推土機這樣的領域:Exlude場 - 映射與推土機

<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> 

因此該類模型包含了一個Person對象和人有年齡的對象,我怎麼能排除年齡從這個映射? 在此先感謝。

回答

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>