Mybatis resultMap空值映射问题

Posted 个子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mybatis resultMap空值映射问题相关的知识,希望对你有一定的参考价值。

参考博客:https://www.oschina.net/question/1032714_224673

http://stackoverflow.com/questions/22852383/how-to-change-valuenull-to-empty-string-from-query-when-using-mybatis

Mybatis在使用resultMap来映射查询结果中的列,如果查询结果中包含空值的列(不是null),则Mybatis在映射的时候,不会映射这个字段,例如 查询 name,sex,age,数据库中的age字段没有值,Mybatis返回的map中只映射了 name和sex字段,而age字段则没有包含。

那么如何将age字段映射到map中呢。提供两种解决方法:

使用Mybatis config配置

创建configuration.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD SQL MAP Config 3.1//EN" 
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
  <settings>
      <setting name="callSettersOnNulls" value="true"/>
  </settings>
</configuration>

 

以上是关于Mybatis resultMap空值映射问题的主要内容,如果未能解决你的问题,请参考以下文章

Mybatis映射中的resultType和resultMap之代码详解

正在使用Mybatis,mapper映射文件的问题

Mybatis ResultMap复合映射使用以及源码分析

MyBatis学习 之 二SQL语句映射文件resultMap

Mybatis配置文件resultMap映射什么时候可写可不写

Mybatis:自定义映射resultMap