在下面的映射中,ObjectB已设置为map-null =" false",我认为这意味着ObjectA中的任何null属性都不会设置为ObjectB。
但是,对于某个属性(比如propB),我需要ObjectA成功传递并设置ObjectB的属性,即使它是null。
如何绕过map-null =" false"这个属性?或者我可以做任何解决方法吗?
感谢。
<mapping wildcard="false">
<class-a>ObjectA</class-a>
<class-b map-null="false">ObjectB</class-b>
<field>
<a>propA</a>
<b>childB.propA</b>
</field>
<field>
<a>propB</a>
<b>childB.propB</b>
</field>
</mapping>
答案 0 :(得分:0)
我通过在ObjectA和childB之间创建单独的推土机映射来解决此问题。检查下面的推土机映射:
<mapping wildcard="false">
<class-a>ObjectA</class-a>
<class-b map-null="false">ObjectB</class-b>
<field>
<a>propA</a>
<b>childB.propA</b>
</field>
<field>
<a>this</a>
<b>childB</b>
</field>
</mapping>
<mapping wildcard="false">
<class-a>ObjectA</class-a>
<class-b>childB</class-b>
<field>
<a>propB</a>
<b>propB</b>
</field>
</mapping>
这样,propB可以为null,并且有效,因为它位于不同的映射中。