Spring boot + MyBatis 查询返回Map时设置值为null的字段也在结果集中
参考:
http://blog.csdn.net/abc_email/article/details/49641073
http://blog.csdn.net/massivestars/article/details/53064158
最近项目中因为直接使用map返回查询数据,导致如果查询出来的数据为 null 时map中会缺少相应的属性,经过各种查资料尝试才解决,
在代码中尝试了设置 SqlSessionFactoryBean 中的 setConfigurationProperties 属性无果
尝试了再application.yml 文件中配置 mybatis:callSettersOnNulls:true 也无效
最后通过代码加载xml 配置文件的方式解决
SqlSessionFactoryBean bean = new SqlSessionFactoryBean();
bean.setConfigLocation(new ClassPathResource("mybatis-config.xml"));
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!-- 全局参数 -->
<settings>
<setting name="callSettersOnNulls" value="true" />
</settings>
</configuration>