doc.setField("id", 81);
Map<String, String> setOper = new HashMap<String, String>();
setOper.put("set", "小冰");
doc.addField("name", setOper);
UpdateResponse response = server.add(doc);
server.commit();
的确实现了指定字段的更新,不用设置其它未改变的字段。看了下代码,当发现设置的字段值是Map类型时就认为是原子更新了。
但据说还是对整个文档删除后再建立,索引还是重新建一遍,源码暂时没看懂。如果这样,有频繁更新字段时还是不合理。