solr/solrj原子更新
lucene原子更新自己不用多介绍,但solr它的包装,下面是一个简单的介绍是;这个操作是用于索引非常有用。
详细在代码中使用例如以下:
- /**
- * 原子更新方式
- * */
- public static void updateSolrField()throws Exception{
- SolrInputDocument doc = new SolrInputDocument();
- doc .addField("id", "10");//依据id唯一标识
- Map<String,String> map=new HashMap<String, String>();
- map.put("add", "新加的field");//放入支持的操作,对多值域管用 ,添加field
- //map.put("set", "更新后的field");//对单值和多值域管用,更新field
- //map.put("inc", "100");//放入支持的操作,对数值域管用
- sd.addField("name", map);
- server.add(sd);
- server.commit();
- System.out.println("原子更新成功!");
- }
当然要注意一点的是,操作的field必须为存储(store="true"),否则更新的指数将覆盖上一个索引。
版权声明:本文博主原创文章,博客,未经同意不得转载。