3

solrj API を使用して xml ファイルから solr にデータをロードするにはどうすればよいですか?

4

3 に答える 3

6

ありがとうパスカル。私は私の質問を言い逃しました、私は実際にグルーヴィーを使用しています。しかし、いずれにしてもあなたのアプローチはうまくいきますが、これが私の解決策でした:

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 に答える