mybatis返回map数据空值在map中key-value都不存在 map中字段和sql查询的字段数量
时间: 2023-07-31 16:12:26 浏览: 180
如果MyBatis返回的Map中没有某个字段的值,那么该字段在Map中对应的key-value对将不存在。这是因为MyBatis默认情况下不会将空值加入到Map中。
如果你需要在Map中保留空值,可以使用MyBatis的`<resultMap>`标签来自定义结果集映射。你可以在`<resultMap>`标签中使用`<result>`标签来映射每个字段,并设置`nullValue`属性来指定空值的默认值。例如:
```xml
<resultMap id="userMap" type="java.util.HashMap">
<result column="id" property="id"/>
<result column="name" property="name" nullValue="Unknown"/>
<result column="age" property="age" nullValue="0"/>
</resultMap>
```
在上面的代码中,如果查询结果中`name`或`age`字段的值为空,对应的key-value对将会存在于Map中,且value分别为`Unknown`和`0`。
阅读全文