修改JSONObject.fromObject数字为null时被转换为0

前端之家收集整理的这篇文章主要介绍了修改JSONObject.fromObject数字为null时被转换为0前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如果未设置的话默认是DefaultDefaultValueProcessor

Java代码
  1. publicclassDefaultDefaultValueProcessorimplementsDefaultValueProcessor{
  2. publicObjectgetDefaultValue(Classtype){
  3. if(JSONUtils.isArray(type)){
  4. returnnewJSONArray();
  5. }elseif(JSONUtils.isNumber(type)){
  6. if(JSONUtils.isDouble(type)){
  7. newDouble(0);
  8. else{
  9. newInteger( }
  10. if(JSONUtils.isBoolean(type)){
  11. returnBoolean.FALSE;
  12. if(JSONUtils.isString(type)){
  13. return"";
  14. returnJSONNull.getInstance();
  15. }

在jsonConfig 注册defaultValueProcessor
//设置Integer类型为空的默认值json-lib默认是0
  • jsonConfig.registerDefaultValueProcessor(Integer.class,
  • newDefaultValueProcessor(){
  • null;
  • });

  • 这样转换时Integer类型如果为null转换还是null,不会被转为0

    转自:http://yaoba.iteye.com/blog/555806

    猜你在找的Json相关文章