用json-lib中的JsonConfig处理null
程序员文章站
2022-07-12 15:52:43
...
通常,我们使用JSONSerializer.toJSON(list, jsonConfig)生成JOSN串。
默认情况下遇到null时,String类型转换为"",Integer,Float,Double等数值类型被转换为0,这往往不是我们想要的。
这段代码可以解决Integer类型的被默认转换为0的问题,这样null将替换0成为默认转换值。其它类型的设置类似。
import net.sf.json.JsonConfig;
import net.sf.json.processors.DefaultValueProcessor;
...
JsonConfig jsonConfig= new JsonConfig();
jsonConfig.registerDefaultValueProcessor(Integer.class,
new DefaultValueProcessor(){
public Object getDefaultValue(Class type){
return JSONNull.getInstance();
}
});