使用 SolrJ 索引文档
Indexing document with SolrJ
我正在测试用于索引文档的 SolrJ 代码。
当我执行我的代码时,它看起来工作正常。
但是在执行之后,当我在 Solr UI 上检查预期结果时,
它什么都不显示。但在重新启动 Solr 后,它会在 Solr UI 上正确显示预期结果。
如何在不重启 Solr 的情况下获取索引文档?
我的 Solr 版本:5.2.1
请参考下面我的 Java 代码
import java.io.IOException;
import org.apache.solr.client.solrj.SolrClient;
import org.apache.solr.client.solrj.SolrServerException;
import org.apache.solr.client.solrj.impl.HttpSolrClient;
import org.apache.solr.client.solrj.response.UpdateResponse;
import org.apache.solr.common.SolrInputDocument;
import org.apache.solr.common.*;
public class addDocument {
public static void main(String[] args) throws IOException,
SolrServerException {
try {
String urlString = "http://(SolrServer)/solr/test_core/";
SolrClient solr = new HttpSolrClient(urlString);
SolrInputDocument doc = new SolrInputDocument();
// indexing a document
doc.addField("id", "12311122113");
doc.addField("title", "Insertion Completed");
UpdateResponse response = solr.add(doc);
System.out.println("Done");
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
}
您需要在文档索引过程完成后提交。所以如果你重新启动 solr,它会自动提交。如果您不想重新启动 Solr。你可以尝试
重装内核(参考下文URL,根据自己的情况更改URL名称)
http://127.0.0.1:8080/solr/admin/cores?action=RELOAD&core=core1
或
使用solr.commit();在你的代码中
我正在测试用于索引文档的 SolrJ 代码。 当我执行我的代码时,它看起来工作正常。 但是在执行之后,当我在 Solr UI 上检查预期结果时, 它什么都不显示。但在重新启动 Solr 后,它会在 Solr UI 上正确显示预期结果。
如何在不重启 Solr 的情况下获取索引文档?
我的 Solr 版本:5.2.1 请参考下面我的 Java 代码
import java.io.IOException;
import org.apache.solr.client.solrj.SolrClient;
import org.apache.solr.client.solrj.SolrServerException;
import org.apache.solr.client.solrj.impl.HttpSolrClient;
import org.apache.solr.client.solrj.response.UpdateResponse;
import org.apache.solr.common.SolrInputDocument;
import org.apache.solr.common.*;
public class addDocument {
public static void main(String[] args) throws IOException,
SolrServerException {
try {
String urlString = "http://(SolrServer)/solr/test_core/";
SolrClient solr = new HttpSolrClient(urlString);
SolrInputDocument doc = new SolrInputDocument();
// indexing a document
doc.addField("id", "12311122113");
doc.addField("title", "Insertion Completed");
UpdateResponse response = solr.add(doc);
System.out.println("Done");
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
}
您需要在文档索引过程完成后提交。所以如果你重新启动 solr,它会自动提交。如果您不想重新启动 Solr。你可以尝试
重装内核(参考下文URL,根据自己的情况更改URL名称)
http://127.0.0.1:8080/solr/admin/cores?action=RELOAD&core=core1
或
使用solr.commit();在你的代码中