我有需要更新的文档,但更新的参数在用户依赖时始终不一样。那么如何更新文档或用基于id的新值替换整个文档。
答案 0 :(得分:0)
您将更新的值包装在Map
设置更新:
Map<String, Object> updateInfo; // Key is db column name, value is updatedValue
Then create update operations:
Query<Entity> filter = datastore.createQuery(Entity.class)
.field("_id", id);
UpdateOperations<Entity> updateOps = datastore.createUpdateOperations(Entity.class);
updateInfo.entrySet().forEach(e -> updateOps.set(e.getKey(), e.getValue());
datastore.update(filter, updateOps);
通过这种方式,您可以使用任意数量的字段更新实体