Solr:如何使用Solrj索引和查询整数数组?

时间:2014-02-22 01:54:47

标签: solr solrj

我是Solr的新手。 我想知道如何使用Solrj索引整数数组或整数向量并查询索引上的整数数组。 感谢。

1 个答案:

答案 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));
}

希望这会有所帮助。