`
elvis4139
  • 浏览: 147774 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

解决json-lib String null 默认为 ""问题

阅读更多
最近用.Net和Java服务端通信,发现生成JSON时,json-lib自动把所有String中的null,转换成空串"",看源码发现是net.sf.json.processors.DefaultDefaultValueProcessor类中。默认就返回"",Number类型自动返回0。如下:
public class DefaultDefaultValueProcessor implements DefaultValueProcessor {
   public Object getDefaultValue( Class type ) {
      if( JSONUtils.isArray( type ) ){
         return new JSONArray();
      }else if( JSONUtils.isNumber( type ) ){
         if( JSONUtils.isDouble( type ) ){
            return new Double( 0 );
         }else{
            return new Integer( 0 );
         }
      }else if( JSONUtils.isBoolean( type ) ){
         return Boolean.FALSE;
      }else if( JSONUtils.isString( type ) ){
         return "";
      }
      return JSONNull.getInstance();
   }
}


修改源码改成如下即可。
 // return "";
    return null;


对于其他类型默认值也可以根据需要修改。
分享到:
评论

相关推荐

    json-lib-2.3.jar

    这个版本的库解决了在Java中将Java对象转换为JSON对象以及反向转换的问题,特别是对于特定数据结构如`JsonObject`和`JsonArray`的处理。 描述中提到的`JsonObject.fromObject()`方法是json-lib中用来将一个Java对象...

    json-lib及其依赖的包

    8. **错误处理**:在使用JSON-lib进行转换时,可能会遇到类型不匹配、null值处理等问题,需要正确捕获和处理可能出现的异常。 9. **与其他技术的集成**:JSON-lib可以很好地与Spring框架、Servlets以及其他Java Web...

    json-lib之jar包,源代码及API文档

    此外,理解JSON-Lib对于null值的处理也很重要,因为JSON规范规定null值是有效的,但在Java中可能需要特殊处理。 总之,JSON-Lib作为一个强大的JSON处理工具,能够简化Java开发中的数据交换过程。有了`json-lib.jar`...

    使用json-lib自定义复杂类型转换为Json字符串

    默认情况下,`json-lib`会尝试自动映射Java对象的字段到JSON键值对。例如,如果你有一个名为`Person`的类: ```java public class Person { private String name; private int age; // getters and setters } `...

    JSON-LIB快速入门

    你可以使用`XML.toJSONObject(xmlString)`将XML字符串转换为JSON对象,或者用`JSONObject.toXML(jsonObject)`将JSON对象转换为XML字符串。 在实际使用中,你可能需要处理嵌套的对象和数组,或者包含复杂类型的JSON...

    JSON-LIB快速入门(转)

    在实际使用中,注意JSON-LIB对null值的处理,有些版本默认会忽略null值。如果需要包含null,可能需要配置转换器或使用特定方法。 总之,JSON-LIB是一个强大的Java库,为处理JSON数据提供了便利。通过了解其基本...

    json-lib 使用总结--java对象转json字符串

    `json-lib` 是一个 Java 库,它提供了将 Java 对象转换为 JSON 格式以及将 JSON 解析回 Java 对象的功能。这篇博客文章将探讨 `json-lib` 的使用方法和关键特性。 首先,`json-lib` 支持多种类型的 Java 对象转换,...

    JSON-lib框架,转换JSON、XML不再困难

    通过JSON-lib,开发者可以轻松地将Java对象转换为JSON字符串,或者将JSON文本解析成Java对象。 ### JSON的基本概念 - **JSON对象**:由键值对组成,用花括号`{}`包围。每个键由一个字符串和冒号分隔,后面跟着对应...

    json2.4相关依赖jar包json-lib-2.4-jdk15.jar/ezmorph-1.0.6.jar 等6个jar包

    `json-lib`库支持将Java对象转换为JSON字符串,反之亦然,使得Java应用能够方便地与JSON数据交互。 另一个提到的依赖是`ezmorph-1.0.6.jar`,这是一个Java库,主要用于对象的动态转型。在处理JSON时,有时候我们...

    Java 使用json-lib处理JSON详解及实例代码

    总结,json-lib库提供了方便的方法来处理JSON数据,包括将JSON字符串解析为Java对象、将Java对象序列化为JSON字符串,以及在Java对象和JSON数组之间转换。这些功能对于在Java应用程序中处理JSON数据非常有用,特别是...

    json-java对象转换包

    在Java中,为了方便地将Java对象转换为JSON格式以及将JSON字符串解析为Java对象,通常会使用特定的库,如"json-java对象转换包"所提及的json-lib。json-lib是一个Java库,它提供了将Java对象转换为JSON格式,以及将...

    json-lib-2.2.2-jdk15、ezmorph-1.0.6

    java处理json字符串所使用的jar包; 相关代码: String temp="{'data':{'a':[{'b1':'bb1','c1':'cc1'},{'b2':'bb2','c2':'cc2'}]}}"; JSONObject jodata =JSONObject.fromObject(temp); JSONObject joa =JSONObject....

    JSON - JAVA 使用方法.docx

    以下是一些使用json-lib将Java数据结构转换为JSON的例子: 1. 将List集合转换为JSON: ```java List<String> list = new ArrayList(); list.add("first"); list.add("second"); JSONArray jsonArray2 = JSONArray....

    java里转josn字符串所用的jar包.zip

    但`json-lib.jar`作为早期的解决方案,对于理解JSON处理的基本概念和流程仍然有其价值。 总结来说,`json-lib.jar`是Java中处理JSON的一种工具库,提供将Java对象转换为JSON字符串和反向转换的功能。虽然现代的JSON...

    javajsondemo

    在Java中,有很多库可以帮助我们处理JSON,其中`json-lib`是一个常用的库,它提供了将Java对象转换为JSON字符串以及将JSON字符串解析为Java对象的功能。本教程将围绕`json-lib`库,介绍如何在Java中进行JSON操作。 ...

    java json互转demo

    然后,你可以使用`JsonBeanUtil`类的`jsonString()`方法将Java对象转换为JSON字符串: ```java Person person = new Person(); person.setName("John"); person.setAge(30); person.setCity("New York"); String ...

    JS和JAVA使用JSON方法解析汇报.docx

    - Java null -> JSON null 3. **Java对象与JSON字符串转换** - 将Java对象转换为JSON字符串: ```java JSONObject jsonObject = JSONObject.fromObject(yourJavaObject); String jsonString = jsonObject....

    Json_lib_MDd_MT

    JSON库“Json_lib_MDd_MT”专为x86架构设计,MT可能指的是多线程(Multi-Threaded)支持,这意味着该库可以在多线程环境中安全地处理JSON数据。 JSON库在软件开发中扮演着重要角色,特别是在网络应用中,因为服务器...

Global site tag (gtag.js) - Google Analytics