В моей базе данных Монго у меня есть следующий документ:
{
"_id" : ObjectId("5d1a08d2329a3c1374f176df"),
"associateID" : "1234567",
"associatePreferences" : [
{
"type" : "NOTIFICATION",
"serviceCode" : "service-code",
"eventCode" : "test-template",
"preferences" : [
"TEXT",
"EMAIL"
]
},
{
"type" : "URGENT_NOTIFICATION",
"serviceCode" : "service-code",
"eventCode" : "test-template",
"preferences" : [
"TEXT"
]
}
]
}
Я пытаюсь добавить новые элементы в массивы настроек, основанные на заданном типе, serviceCode и eventCode. Мне удалось написать этот запрос в монго, как показано ниже:
db.user_communication_preferences.update(
{'associateID':'testassociate'},
{$addToSet:{'associatePreferences.$[element].preferences':"UPDATE"}},
{arrayFilters:[
{'element.serviceCode':'service-code',
'element.eventCode':'test-template',
'element.type':'NOTIFICATION'
}
]}
)
Я пытаюсь перевести этот запрос в загрузочное приложение Java. Я видел здесь несколько сообщений об этом, но я не видел ни одного, включающего в себя arrayFilters. Кто-нибудь может привести меня по правильному пути?