我正在使用Java,我有一个JSON字符串:
{
"name" : "abc" ,
"email id " : ["abc@gmail.com","def@gmail.com","ghi@gmail.com"]
}
Run Code Online (Sandbox Code Playgroud)
那我的Java地图:
Map<String, Object> retMap = new HashMap<String, Object>();
Run Code Online (Sandbox Code Playgroud)
我想将JSONObject中的所有数据存储在该HashMap中.
任何人都可以为此提供代码吗?我想使用这个org.json库.
任何人都可以向我解释一下toString()在Object课堂上定义的方法的概念吗?它是如何使用的,它的目的是什么?
来自Gson项目的这个链接似乎表明我必须做类似以下的事情来将类型化的Map序列化为JSON:
public static class NumberTypeAdapter
implements JsonSerializer<Number>, JsonDeserializer<Number>,
InstanceCreator<Number> {
public JsonElement serialize(Number src, Type typeOfSrc, JsonSerializationContext
context) {
return new JsonPrimitive(src);
}
public Number deserialize(JsonElement json, Type typeOfT,
JsonDeserializationContext context)
throws JsonParseException {
JsonPrimitive jsonPrimitive = json.getAsJsonPrimitive();
if (jsonPrimitive.isNumber()) {
return jsonPrimitive.getAsNumber();
} else {
throw new IllegalStateException("Expected a number field, but was " + json);
}
}
public Number createInstance(Type type) {
return 1L;
}
}
public static void main(String[] args) {
Map<String, Number> map = …Run Code Online (Sandbox Code Playgroud) 我正在使用Jongo与Mongo合作,当我进行查询时,我收到了LinkedHashMap作为结果.
Iterator one = (Iterator) friends.find(query).projection("{_id:0}").as(Object.class);
while (one.hasNext()) {
LinkedHashMap data= new LinkedHashMap();
data= (LinkedHashMap) one.next();
String content=data.toString();
}
Run Code Online (Sandbox Code Playgroud)
问题是如果json是{"user":"something"}内容将是{user = something},那么json只是来自HashMap的toString方法.
我怎么能得到原始的JSON?
我没有一个类映射响应,它不是一个解决方案创建一个map类,这就是我使用Object.class的原因.
我是Java的新手.我一直在研究一个使用Maven和Java 1.7的项目.在我的项目中,我有一个HashMap.我想将此HashMap输出到JSON.目前推荐的方法是什么?
当我进行谷歌搜索时,我会得到很多选择(即杰克逊).但是,我不确定我应该使用什么.另外,我想使用可通过Maven访问的库.
谢谢,
我构建一个json对象,它由在Hashmap中定义的nameValue对组成
我遇到的问题是当我调用时:
jsonObject.put(hashmap);
Run Code Online (Sandbox Code Playgroud)
它添加了nameValue对,如下所示:
name=value 代替 name:value
有什么想法吗?
谢谢