Если у меня есть объект Java с только обновляемые поля набора, например (предположим, что есть третье поле C
что не установлен):Spring Data Mongo обновляет ненулевые поля объекта?
obj.setA(1); obj.setB(2);
Можно ли выполнить Update
операцию, только обновления A
и B
? Оказывается, только мои варианты с Spring Data должны использовать save()
(который перезаписывает значение для C
в базе данных для null
), или использовать update()
, который требует от меня, чтобы построить Update
объект с set()
заявления для каждого поля в объекте, а также имена монгольских полей hardcode. По сути то, что я ищу что-то, что бы сделать эту операцию обновления:
$set:{'a':1,'b':2}
я бездельничал немного с отражением, чтобы попытаться сделать это (если смотреть на решения, предлагаемые here), которые потенциально могли бы работа, но это кажется немного взломанным. Если Spring Data так или иначе поддерживает это, я бы предпочел сделать это.