背景:
使用SSM框架時,有時查詢數據時存在字段為“null”時的情況,但之前不清楚什么時候會返回什么時候不會返回的情況,本文就用來記錄自主控制“返回”和“不返回”的解決辦法。
同一個接口兩種返回情況,示例:
准備兩個字段,一個有值一個沒值:
去除空值(查多個字段只返回有值的字段):
保留空值(查幾個字段就返回幾個字段):
通過兩種圖片對比不難發現:保留空值時返回字段和查詢的字段數量保持一致,去除空值時只返回了有值字段。
控制辦法:
在mybatis的配置文件中加一行配置:<setting name="callSettersOnNulls" value="true" />。(有這個配置則會保留空值字段,沒有的話會自動去除空值字段)
例如:
<?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>
如果沒有的話可以新增一個配置文件然后在加到"application.yml"里:
1、新增配置文件,增加想要的配置,例如剛剛提到空值相關的配置
2、把配置文件引入到application.yml: