Java 如何将具有空值的键放入net.sf.json.JSONObject中?

Java 如何将具有空值的键放入net.sf.json.JSONObject中?,java,json,jsonobject,Java,Json,Jsonobject,我正在使用net.sf.json.JSONObject。当我试图使用方法将数据放入Json对象时,如果我的值为null,它将删除键 即使我的值为空,是否有办法保持我的密钥在对象中的状态 例如 JSONObject json=新的JSONObject(); put(“myKey”,null); 然后我的输出是:{} 但是我想要 输出:{“我的钥匙”,“我的钥匙”} 我该怎么办 json.put("myKeyu",JSONObject.NULL); 更多细节 更多细节 JSONObject.N

我正在使用net.sf.json.JSONObject。当我试图使用方法将数据放入Json对象时,如果我的值为null,它将删除

即使我的值为空,是否有办法保持我的密钥在对象中的状态

例如


JSONObject json=新的JSONObject();
put(“myKey”,null);

然后我的输出是:
{}

但是我想要

输出:
{“我的钥匙”,“我的钥匙”}

我该怎么办

json.put("myKeyu",JSONObject.NULL);
更多细节


更多细节

JSONObject.NULL
用于Apache Commons JSONObject

请尝试以下操作:

json.put(“key”,JSONNull.getInstance())
下面是
net.sf.json.JSONObject
的文档:


搜索
JSONNull
以了解更多信息。

JSONObject.NULL
用于Apache Commons JSONObject

JSONObject backJsonObject = new JSONObject();
        backJsonObject.put("111", "NULL");
        backJsonObject.put("111", "null");  how to output {"111":"null"} instead of  {"111":null}  in net.sf.json
请尝试以下操作:

json.put(“key”,JSONNull.getInstance())
下面是
net.sf.json.JSONObject
的文档:


搜索
JSONNull
以了解更多信息。

Hi..在我的情况下,这是不可能的..我的值是动态来自数据库的。所以它可能是空的,也可能不是。为什么不这样做:json.put(“myKeyu”,value==null?JSONObject.null:value);是的,你是对的。我们可以这样做,但我已经开发了我的应用程序,我想要一些全局解决方案,通过它我只能在一个地方进行更改。在你的情况下,无论何时我在json中添加值,我都必须进行更改。通过一些JsonConfig是否可能?不。我怀疑通过JsonConfig是否可能做到这一点。我想您可以尝试使用AOP:截取所有JSONObject.put方法,并用JSONObject.null.Hi.替换您的null。在我的情况下,这是不可能的。我的值是动态地来自数据库。所以它可能是空的,也可能不是。为什么不这样做:json.put(“myKeyu”,value==null?JSONObject.null:value);是的,你是对的。我们可以这样做,但我已经开发了我的应用程序,我想要一些全局解决方案,通过它我只能在一个地方进行更改。在你的情况下,无论何时我在json中添加值,我都必须进行更改。通过一些JsonConfig是否可能?不。我怀疑通过JsonConfig是否可能做到这一点。我想你可以尝试使用AOP:截取所有的JSONObject.put方法,并用JSONObject.null替换null。如果你能解释你的答案会更好。如果你能解释你的答案会更好。
JSONObject backJsonObject = new JSONObject();
        backJsonObject.put("111", "NULL");
        backJsonObject.put("111", "null");  how to output {"111":"null"} instead of  {"111":null}  in net.sf.json