原子更新不起作用 Spring 数据 solr
Atomic update not working Spring data solr
我有一个 Spring 数据 solr 项目,我的存储库 class 是一个简单的 SolrCrudRepository。我的问题是如何使 Spring 数据 solr 使用 Solr 4 的原子更新功能。换句话说,为了使原子更新起作用,我需要进行哪些额外配置,以便 Repository.save( ) 有效。
使用 PartialUpdate
和 SolrTemplate
。
PartialUpdate update = new PartialUpdate("id", "123456789");
update.setValueOfField("name", "updated-name");
solrTemplate.saveBean(update);
solrTemplate.commit();
SolrInputDocument doc = new SolrInputDocument();
Map<String, String> partialUpdate = new HashMap<>();
partialUpdate.put("set", "value to update");
doc.addField("id", "100");
doc.addField("field name ", partialUpdate);
UpdateRequest up = new UpdateRequest();
up.setBasicAuthCredentials("username", "@password");
up.add(doc);
up.process(solrClient, "corename");
up.commit(solrClient, "corename");
我有一个 Spring 数据 solr 项目,我的存储库 class 是一个简单的 SolrCrudRepository。我的问题是如何使 Spring 数据 solr 使用 Solr 4 的原子更新功能。换句话说,为了使原子更新起作用,我需要进行哪些额外配置,以便 Repository.save( ) 有效。
使用 PartialUpdate
和 SolrTemplate
。
PartialUpdate update = new PartialUpdate("id", "123456789");
update.setValueOfField("name", "updated-name");
solrTemplate.saveBean(update);
solrTemplate.commit();
SolrInputDocument doc = new SolrInputDocument();
Map<String, String> partialUpdate = new HashMap<>();
partialUpdate.put("set", "value to update");
doc.addField("id", "100");
doc.addField("field name ", partialUpdate);
UpdateRequest up = new UpdateRequest();
up.setBasicAuthCredentials("username", "@password");
up.add(doc);
up.process(solrClient, "corename");
up.commit(solrClient, "corename");