- Apache Solr 教程
- Apache Solr - 主页
- Apache Solr - 概览
- Apache Solr - 搜索引擎基础
- Apache Solr - Windows 环境
- Apache Solr - 使用 Hadoop
- Apache Solr - 架构
- Apache Solr - 术语
- Apache Solr - 基本命令
- Apache Solr - 核心
- Apache Solr - 索引数据
- Apache Solr - 添加文档(XML)
- Apache Solr - 更新数据
- Apache Solr - 删除文档
- Apache Solr - 检索数据
- Apache Solr - 查询数据
- Apache Solr - 分面搜索
- Apache Solr 实用资源
- Apache Solr - 快速指南
- Apache Solr - 实用资源
- Apache Solr - 讨论
Apache Solr - 检索数据
在本章节中,我们将讨论如何使用 Java 客户端 API 检索数据。假设我们有一个名为 sample.csv 的 .csv 文档,内容如下。
001,9848022337,Hyderabad,Rajiv,Reddy 002,9848022338,Kolkata,Siddarth,Battacharya 003,9848022339,Delhi,Rajesh,Khanna
您可以使用 post 命令将此数据编入名为 sample_Solr 的核心。
[Hadoop@localhost bin]$ ./post -c Solr_sample sample.csv
以下是将文档添加到 Apache Solr 索引的 Java 程序。将此代码保存在名为 RetrievingData.java 的文件中。
import java.io.IOException; import org.apache.Solr.client.Solrj.SolrClient; import org.apache.Solr.client.Solrj.SolrQuery; import org.apache.Solr.client.Solrj.SolrServerException; import org.apache.Solr.client.Solrj.impl.HttpSolrClient; import org.apache.Solr.client.Solrj.response.QueryResponse; import org.apache.Solr.common.SolrDocumentList; public class RetrievingData { public static void main(String args[]) throws SolrServerException, IOException { //Preparing the Solr client String urlString = "https://127.0.0.1:8983/Solr/my_core"; SolrClient Solr = new HttpSolrClient.Builder(urlString).build(); //Preparing Solr query SolrQuery query = new SolrQuery(); query.setQuery("*:*"); //Adding the field to be retrieved query.addField("*"); //Executing the query QueryResponse queryResponse = Solr.query(query); //Storing the results of the query SolrDocumentList docs = queryResponse.getResults(); System.out.println(docs); System.out.println(docs.get(0)); System.out.println(docs.get(1)); System.out.println(docs.get(2)); //Saving the operations Solr.commit(); } }
要编译以上代码,请在终端中执行以下命令 −
[Hadoop@localhost bin]$ javac RetrievingData [Hadoop@localhost bin]$ java RetrievingData
执行以上命令后,您将获得以下输出。
{numFound = 3,start = 0,docs = [SolrDocument{id=001, phone = [9848022337], city = [Hyderabad], first_name = [Rajiv], last_name = [Reddy], _version_ = 1547262806014820352}, SolrDocument{id = 002, phone = [9848022338], city = [Kolkata], first_name = [Siddarth], last_name = [Battacharya], _version_ = 1547262806026354688}, SolrDocument{id = 003, phone = [9848022339], city = [Delhi], first_name = [Rajesh], last_name = [Khanna], _version_ = 1547262806029500416}]} SolrDocument{id = 001, phone = [9848022337], city = [Hyderabad], first_name = [Rajiv], last_name = [Reddy], _version_ = 1547262806014820352} SolrDocument{id = 002, phone = [9848022338], city = [Kolkata], first_name = [Siddarth], last_name = [Battacharya], _version_ = 1547262806026354688} SolrDocument{id = 003, phone = [9848022339], city = [Delhi], first_name = [Rajesh], last_name = [Khanna], _version_ = 1547262806029500416}
广告