Это первый раз, когда я использовал MongoDB и я добавил документ с Java таким образом:Добавить вспомогательный документ MongoDB с Явой
//document populated with for cycle
document.append(element.getID().toString(), new Document("EL_ID", feedback.getPos(i).getID())
.append("name", element.getName())
.append("vote", 5)
);
//and write (replaceOne is correct for my program's logic)
BasicDBObject searchQuery = new BasicDBObject().append("_id", MainDocID);
collection.replaceOne(searchQuery, document);
результатом является:
{
"_embedded": {},
"_links": { ... },
"_type": "DOCUMENT",
"_id": { ... },
"element_ID_1": {
"EL_ID": {
"$oid": "element_ID_1"
},
"name": "one",
"vote": 5
},
"element_ID_2": {
"EL_ID": {
"$oid": "element_ID_2"
},
"name": "two",
"vote": 5
},
"_created_on": "date"
}
Я думаю, что это правильно поместить эти элементы в «_embedded», и это также более упорядочено, но я не знаю, как это сделать.
Я хочу, чтобы достичь этого результата:
{
"_embedded": {
"element_ID_1": {
"EL_ID": {
"$oid": "element_ID_1"
},
"name": "one",
"vote": 5
},
"element_ID_2": {
"EL_ID": {
"$oid": "element_ID_2"
},
"name": "two",
"vote": 5
}
},
"_links": {},
"_type": "DOCUMENT",
"_id": {},
"_created_on": "date"
}
или, например, (тот же принцип): _embedded -> elements_lista -> "element_ID_n"
я не мог найти пример, применимый к моему делу (из java-кода), любое предложение оценивается, спасибо.
Я не использовал карту в этой части программы (идентификаторы сохраненный в списке), на данный момент я оставляю как есть. Если у меня будет время позже, я улучшу документ. Спасибо, однако. – adev