有时候进行数据库查询操作的时候,查询结果中一条参数或者有某几个参数为null,这种情况下,参数名都不会返回,解决办法如下:
第一种:mybatis返回值resultType="map" 改成实体类返回
第二种:还是用map接收,默认查询为控的字段不显示,
所以在修改配置:
如果配置文件是mybatis-config,则加上 :
<setting name="callSettersOnNulls" value="true"/>
如果使用的是spring-boot那么在application.yml加上:
mybatis.configuration.call-setters-on-nulls=true,如下图所示
mybatis:
configuration:
call-setters-on-nulls: true
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD SQL Map Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<settings>
<setting name="cacheEnabled" value="true" /><!-- 全局映射器启用缓存 -->
<setting name="useGeneratedKeys" value="true" />
<setting name="defaultExecutorType" value="REUSE" />
<setting name="callSettersOnNulls" value="true"/>
</settings>
还有其他的方法,楼主只列举了最方便的两种。