我是Solr的新手。 我想知道如何使用Solrj索引整数数组或整数向量并查询索引上的整数数组。 感谢。
答案 0 :(得分:0)
首先在schema.xml中创建一个多值“int”类型字段(例如“ intarray ”)。您可以拥有以下字段定义。
<field name="intarray" type="int" indexed="true" stored="true" multiValued="true"/>
尝试使用以下代码段将数据索引到Solr中。更改值并运行程序将几个整数数据索引到同一个字段中。
SolrServer solr = new HttpSolrServer("http://localhost:8983/solr");
SolrInputDocument document = new SolrInputDocument();
Map<String, Integer> partialUpdate = new HashMap<String, Integer>();
partialUpdate.put("add", 100);
document.addField("id", "10000");
document.addField("intarray", partialUpdate);
solr.add(document);
solr.commit();
要查询,请尝试以下代码段。
SolrServer solr = new HttpSolrServer("http://localhost:8983/solr");
SolrQuery query = new SolrQuery();
query.setQuery("intarray:100");
query.setStart(0);
QueryResponse response = solr.query(query);
SolrDocumentList results = response.getResults();
for (int i = 0; i < results.size(); ++i) {
System.out.println(results.get(i));
}
希望这会有所帮助。