当在写sql时可能会遇到 需要不为空执行一个情况,判断是空值执行另一个情况
比如:
判断地址字段不为空的进行更新,判断为空的填写默认值
<if test="record.address!= null and record.address !='' " >
ADDRESS=#{record.address}
</if>
<if test="record.address== null or record.address=='' " >
ADDRESS='默认的值'
</if>
此时走默认情况下就不会进行正常的更新
原因:因为mybatis会把''解析为字符,java是强类型语言
修改: 使用 toString() 进行转换
<if test="record.address== null or record.address==''.toString() " >
ADDRESS='默认的值'
</if>