查看所解析字段是否为""空字符串 --》导致空指针异常
及时没有发现空字符串 可能在程序中drop掉了[]而出现的,所以解析的时候filter下非法数据就可以
0x01 问题描述
正常情况下fastJson解析失败会抛异常,但解析字符串数据为null、”“、“ ”这些情况下,fastJson返回null对象而不会抛异常,这样在调用对象时就导致了空指针异常的问题。
0x02 解决方案
对此,不亦对其进行了一个简单的封装,在上述情况解析出null对象时直接抛异常。
import com.alibaba.fastjson.JSON;
public class JsonUtil{
public static <T> T parseObject(String text, Class<T> clazz) throws Exception{
try {
T t= JSON.parseObject(text,clazz);
if(null==t) {
throw new Exception("parseObject NullPointerException");
}else {
return t;
}
} catch (Exception e) {
throw e;
}
}
}