首页 > 代码库 > Solr笔记四之Solrj创建索引和搜索的一般步骤

Solr笔记四之Solrj创建索引和搜索的一般步骤

在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= http://www.mamicode.com/sd.get(key);

System.out.println(key+"---->"+value);


}
System.out.println("----------------------------");
}

Solr笔记四之Solrj创建索引和搜索的一般步骤