博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Solr笔记四之Solrj创建索引和搜索的一般步骤
阅读量:5939 次
发布时间:2019-06-19

本文共 1564 字,大约阅读时间需要 5 分钟。

hot3.png

在solrj中创建索引的一般步骤:

     1)创建一个SolrServer对象,SolrServer用于管理索引

     2)创建SolrInputDocument对象,即文档对象,并且向文档对象添加字段

     3)利用SolrServer对象的add方法添加SolrInputDocument对象,创建索引

      4)调用SolrServer对象的commit()方法提交索引。

      例如:

           HttpSolrServer hss=new HttpSolrServer("http://localhost:8080/solr");

SolrInputDocument solrInputDocument=new SolrInputDocument();
solrInputDocument.addField("id", 1);
solrInputDocument.addField("uname", "zhangsan");
   solrInputDocument.addField("sex", sex.male.toString());
   solrInputDocument.addField("age", 1);
 
   solrInputDocument.addField("hobby", "basketball");
   hss.add(solrInputDocument);
   hss.commit();

搜索的一般步骤:

1)创建一个SolrServer对象

2)创建查询语句SolrQuery对象

3)创建SolrRequest对象

4)通过SolrRequest的process(SolrServer)方法生成一个SolrResponse对象

5)调用SolrResponse对象的getResults()方法得到结果集

在这里我们还可以通过SolrServer的query(SolrQuery)直接创建一个SolrResponse对象。

      例如:

   1.    HttpSolrServer  hss=new HttpSolrServer("http://localhost:8080/solr");

SolrQuery sq=new SolrQuery("id:1");
QueryRequest qr=new QueryRequest(sq);
       QueryResponse q=qr.process(hss);
 
       SolrDocumentList list=q.getResults();
 
      SolrDocument sd=list.get(0);
 
      System.out.println(sd.get("uname"));

  2.    HttpSolrServer hss=new HttpSolrServer("http://localhost:8080/solr");

SolrQuery sq=new SolrQuery("*:*");
QueryResponse qr=hss.query(sq);
SolrDocumentList list=qr.getResults();
for(SolrDocument sd:list)
{
Iterator iter=sd.keySet().iterator();
for(;iter.hasNext();)
{
String key=(String) iter.next();
Object value= sd.get(key);
System.out.println(key+"---->"+value);
}
System.out.println("----------------------------");
}

转载于:https://my.oschina.net/pangzhuzhu/blog/318048

你可能感兴趣的文章