MongoDB - 合并两个DBObject

jef*_*eon 1 java mongodb dbobject

我正在编写一个模型工厂,为此我使用JSON来加载像这样的MongoDB DBObject:

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

现在,我试图分解我的JSON文件,以便我可以加载带有一个JSON文件的DBObject,如果需要,我可以用另一个JSON文件扩充DBObject.

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

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

Art*_*ang 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"}
Run Code Online (Sandbox Code Playgroud)