Closed sadmonsterr closed 1 month ago
JDK版本: openjdk_8_201 hutool版本: 5.8.32
将一个包含null值的数组序列化为cn.hutool.json.JsonArray时 cn.hutool.json.JsonArray类中的addRaw(Object object)方法没有判断ignoreNullValue配置,导出null最终被转换为了JSONNull对象 参考cn.hutool.json.JsonObject中的set(String key, Object value, Filter<MutablePair<String, Object>> filter, boolean checkDuplicate)方法,就判断了ignoreNullValue配置
// 默认的配置是true,应该转为null的 String jsonArrayStr = "[null]"; JSONArray jsonArray = JSONUtil.toBean(jsonArrayStr, JSONArray.class, true); assert jsonArray.get(0) == JSONNull.NULL;
确认bug,5.8.33修复此问题。
修复见:https://github.com/dromara/hutool/commit/be98b46349c6649195e01b5ca39f281016d9f4e6
版本情况
JDK版本: openjdk_8_201 hutool版本: 5.8.32
问题描述
将一个包含null值的数组序列化为cn.hutool.json.JsonArray时 cn.hutool.json.JsonArray类中的addRaw(Object object)方法没有判断ignoreNullValue配置,导出null最终被转换为了JSONNull对象 参考cn.hutool.json.JsonObject中的set(String key, Object value, Filter<MutablePair<String, Object>> filter, boolean checkDuplicate)方法,就判断了ignoreNullValue配置