背景:线上发现当某个字段返回是null时候,保存到数据库的是字符串"null",正常需要保存的应该是null。
看代码发现代码里用了一个方法 String a = String.valueOf(Object obj),然后返回a,问题在 String.valuOf(Object obj)这里。
JDK1.8 String.valueOf(Object obj)源码:
public static String valueOf(Object obj) {
return (obj == null) ? "null" : obj.toString();
}
String.valueOf(Object obj),入参是Object类型的null的时候,转换成字符串"null"返回