我是 Solr 的新手。我可以从应用程序向 Solr 添加数据,但我想将数据从 Solr 获取到我的 Java 桌面应用程序。
如何从 Solr 获取数据("http://localhost:8983/solr")
?
您可能想使用一些 solr 客户端来请求和处理响应数据。
但是,如果您愿意,可以在简单的 HTTP GET 请求中执行此操作:
// get all documents
http://localhost:8983/solr/select?q=*:*
如果您使用多个核心,那么您可能需要使用:
// get all documents from core0
http://localhost:8983/solr/core0/select?q=*:*
您可以在此处阅读有关 solr常用查询参数的更多信息。
Solrj是最简单的方法。它是 solr java 客户端库。将其作为依赖项添加到您的项目中,然后编写一个 pojo,其中包含您希望从 Solr 获取的所有字段。使用solrj @Field
annotation注释每个字段,然后将您的查询发送到 Solr,如下所示:
SolrServer solrServer = new HttpSolrServer("htp://localhost:8080/solr/core0");
QueryResponse response = solrServer.query(new SolrQuery(query));
List<Pojo> pojos = response.getBeans(Pojo.class);