如何忽略iBatis resultMap上缺少的列?
如果我有这个映射器
<resultMap id="DBEntity" class="CS_Entity">
<result property="Id" column="Id" />
<result property="Field1" column="f1" />
<result property="Field2" column="f2" />
</resultMap>
对于某些查询我想返回列f2,但是如何在不添加所有其他查询的情况下声明字段f2的默认值。
有办法吗?
答案 0 :(得分:1)
使用两个带有f2
<resultMap id="DBEntityWithF2" class="CS_Entity">
<result property="Id" column="Id" />
<result property="Field1" column="f1" />
<result property="Field2" column="f2" />
</resultMap>
和另一个没有f2
<resultMap id="DBEntity" class="CS_Entity">
<result property="Id" column="Id" />
<result property="Field1" column="f1" />
</resultMap>
答案 1 :(得分:1)
您只需在sql中使用"select f2 as Field2 from yourTable"
,并在配置中使用resultClass="CS_Entity"
而不是resultMap
。这样,您无需像上面那样声明映射。