JSON.toJSONString()很好用,但是小心也有坑。
String json = JSON.toJSONString(null);
String json = JSON.toJSONString("");
居然返回"null", """", 为什么不是null, 或者""?!
这时,如果这样去判断 if (Strings.isBlank(json)),将会返回false。
【解决方案一】:
object != null ? JSON.toJSONString(object) : null;
【解决方案二】:
Map map = JSON.parseObject(json, Map.class); -- map为null
或者
Device device = JSON.parseObject(json, Device.class); -- device为null