1

我正在编写一个模型工厂,为此我使用 JSON 来加载一个 MongoDB DBObject,如下所示:

import com.mongodb.util.JSON;
DBObject dbObject = (DBObject) JSON.parse("{'name':'jack', 'age':30}");

现在,我正在尝试分解我的 JSON 文件,以便可以使用一个 JSON 文件加载 DBObject,如果需要,我可以使用另一个 JSON 文件来扩充 DBObject。

虽然听起来很奇怪,但想象一下拥有一组不同类型的用户。比如,BasicUser、AdvancedUser 等。我可以有一个 JSON 文件来加载 BasicUser,并将 AdvancedUser 的其他非重叠细节放在另一个 JSON 文件中。我可以让 AdvancedUser 扩展 BasicUser,因此我可以结合两个 JSON 文件的内容来创建一个 AdvancedUser 模型。

我怎么能做到这样的事情?

4

2 回答 2

5

我相信 putAll 是你想要的。

DBObject obj1 = (DBObject) JSON.parse("{'name':'jack', 'age':30}");
DBObject obj2 = (DBObject) JSON.parse("{'role':'admin'}");
obj1.putAll(obj2);
System.out.println(obj1.toString()); //{ "name" : "jack" , "age" : 30 , "role" : "admin"}
于 2012-05-31T04:50:53.000 回答
0

我决定通过递归遍历一个 DBObject 并将内容传输到另一个来推出我自己的函数。

于 2011-10-13T01:28:54.770 回答