
mybatis使用Map返回时数据库为空的字段不返回问题 (https://www.cnblogs.com/guo-xu/p/12548949.html)
mybatis返回map时value值为null没有对应的key https://blog.csdn.net/FORLOVEHUAN/article/details/107410736
方案1、mybtis 3.3以上版本,增加配置解决mybatis返回数据类型为map,值为null的key没返回(基于spring) https://blog.csdn.net/FORLOVEHUAN/article/details/107410736
方案2、自定义TypeHandler 2.1 则可以建立一个类,实现Mybatis的TypeHandler接口
package Cloud.Base.Storage.SQL.Handler; import org.apache.ibatis.type.JdbcType; import org.apache.ibatis.type.TypeHandler; import java.sql.CallableStatement; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; public class EmptyStringIfNull implements TypeHandler2.2 返回结果集处理{ @Override public String getResult(ResultSet rs, String columnName) throws SQLException { return (rs.getString(columnName) == null) ? "" : rs.getString(columnName); } @Override public String getResult(ResultSet rs, int columnIndex) throws SQLException { return (rs.getString(columnIndex) == null) ? "" : rs.getString(columnIndex); } @Override public String getResult(CallableStatement cs, int columnIndex) throws SQLException { return (cs.getString(columnIndex) == null) ? "" : cs.getString(columnIndex); } @Override public void setParameter(PreparedStatement ps, int arg1, String str, JdbcType jdbcType) throws SQLException { } }