如何使用 solrj API 将 xml 文件中的数据加载到 solr 中?
问问题
4094 次
3 回答
6
谢谢帕斯卡。我想念我的问题,我实际上正在使用groovy。但无论如何你的方法确实有效,但这是我的解决方案:
CommonsHttpSolrServer server = SolrServerSingleton.getInstance().getServer();
def dataDir = System.getProperty("user.dir");
File xmlFile = new File(dataDir+"/book.xml");
def xml = xmlFile.getText();
DirectXmlRequest xmlreq = new DirectXmlRequest( "/update", xml);
server.request(xmlreq);
server.commit();
DirectXmlRequest 的第一个参数是 url 路径,它必须是“/update”并且变量 xml 是包含 XML 的字符串。例如
<add>
<doc>
<field name="title">blah</field>
</doc>
</add>
于 2010-06-02T15:35:02.753 回答
4
在 Java 6 中,您可以使用Xpath从您的 xml 文件中获取您需要的内容。然后,根据从 xml 中提取的内容填充SolrInputDocument 。当该文档包含您需要的所有内容时,您可以使用SolrServer的add方法将其提交给 Solr 。
于 2010-05-31T13:22:12.653 回答
-1
SolrClient client = new HttpSolrClient("http://localhost:8983/solr/jiva/");
String dataDir = System.getProperty("user.dir");
File xmlFile = new File(dataDir + "/Alovera-Juice.xml");
if (xmlFile.exists()) {
InputStream is = new FileInputStream(xmlFile);
String str = IOUtils.toString(is);
DirectXmlRequest dxr = new DirectXmlRequest("/update", str);
client.request(dxr);
client.commit();
}
于 2015-06-16T14:13:25.510 回答