lucene本身对原子更新没有太多的介绍,但solr对其进行了封装,这里简单做个介绍;这点操作还是对索引很实用的。
具体在代码中使用如下:
-
-
-
-
public static void updateSolrField()throws Exception{
-
SolrInputDocument doc = new SolrInputDocument();
-
doc .addField("id", "10");
-
Map<String,String> map=new HashMap<String, String>();
-
map.put("add", "新加的field"); ,增加field
-
-
-
sd.addField("name", map);
-
server.add(sd);
-
server.commit();
-
System.out.println("原子更新成功!");
-
}
当然要注意一点的是,操作的field必须为存储(store="true"),否则更新的索引会覆盖前面的索引。
solr/solrj之原子更新
原文:http://blog.csdn.net/u013035314/article/details/46604471