MongoDB - объединение двух объектов DBObject - PullRequest
1 голос
/ 10 октября 2011

Я пишу фабрику моделей, для которой я использую JSON для загрузки объекта DBObject MongoDB следующим образом:

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

Теперь я пытаюсь разбить мои файлы JSON таким образом, чтобы я мог загрузить DBObject одним файлом JSON, а при необходимости я могу дополнить DBObject другим файлом JSON.

Хотя это звучит странно, представьте, что у вас есть набор пользователей другого типа. Как, BasicUser, AdvancedUser и т. Д. У меня может быть файл JSON для загрузки BasicUser и помещения других непересекающихся деталей AdvancedUser в другой файл JSON. Я могу заставить AdvancedUser расширять BasicUser, и поэтому я могу просто объединить содержимое двух файлов JSON для создания модели AdvancedUser.

Как мне достичь чего-то подобного?

Ответы [ 2 ]

5 голосов
/ 31 мая 2012

Полагаю, что все, что вы хотите.

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"}
0 голосов
/ 13 октября 2011

Я решил развернуть свою собственную функцию, чтобы сделать это путем рекурсивного обхода одного объекта DBOb и переноса содержимого в другой.

...