到目前为止,我一直在使用此代码从 json 字符串创建 DBObject
:
DBObject metadataObject = (DBObject)JSON.parse(jsonString);
但是,com.mongodb.util.JSON
已弃用,建议使用 BasicDBObject.parse
代替。
DBObject metadataObject = (DBObject)BasicDBObject.parse(jsonString);
尽管如此,当 jsonString
是一个数组时(如 "[{k: 'v'},{o: 'p'}]"
),它会抛出异常。 JSON.parse
工作正常。
o,我想要得到的是使用BasicDBObject.parse(...)
:
(DBObject)JSON.parse("[{'hola': 'adeu'}, {'departament': [{'ambit': 'just', 'name': 'ts'}]}]");
代码将是(此代码崩溃):
(DBObject)BasicDBObject.parse("[{'hola': 'adeu'}, {'departament': [{'ambit': 'just', 'name': 'ts'}]}]");
有什么想法吗?
最佳答案
这不是有效的 JSON:
[{k: 'v'},{o: 'p'}]
- 属性名称周围应该有引号。
- 引号应该是双引号 (
"
),而不是单引号 ('
)。
此示例也无效:
[{'hola': 'adeu'}, {'departament': [{'ambit': 'just', 'name': 'ts'}]}]
引用文献:
关于java - MongoDB : JSON util is deprecated,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52455719/