mybatis字段为null不返回
时间: 2024-03-20 22:42:13 浏览: 122
在 MyBatis 中,如果查询结果中某个字段的值为 null,它会返回 null 值。如果你想让 MyBatis 忽略掉 null 值,可以在映射文件中使用 `resultMap` 标签的 `nullValue` 属性来设置默认值。例如:
```xml
<resultMap id="userResultMap" type="User">
<id property="id" column="id" />
<result property="username" column="username" nullValue="Unknown" />
<result property="age" column="age" nullValue="0" />
</resultMap>
```
在上面的例子中,如果查询结果中的 `username` 字段为 null,它将返回默认值 "Unknown";如果 `age` 字段为 null,它将返回默认值 0。这样就可以保证 MyBatis 不会返回 null 值。
另外,如果你想让 MyBatis 忽略掉空字符串,可以使用 `jdbcType` 属性来指定字段的类型,并设置为 `VARCHAR` 类型。例如:
```xml
<resultMap id="userResultMap" type="User">
<id property="id" column="id" />
<result property="username" column="username" jdbcType="VARCHAR" nullValue="" />
<result property="age" column="age" jdbcType="INTEGER" nullValue="0" />
</resultMap>
```
在上面的例子中,如果 `username` 字段为 null 或空字符串,它将返回默认值 "";如果 `age` 字段为 null,它将返回默认值 0。这样就可以保证 MyBatis 不会返回空字符串。
阅读全文