solr4.9 运行

来源:互联网 发布:java public和private 编辑:程序博客网 时间:2024/06/06 01:46

下载solr4.9.0  解压缩,进入文件夹solr-4.9.0\example, 双击start.jar或者在cmd里运行“java -jar start.jar”,然后在浏览器中输入“http://127.0.0.1:8983/solr”,如果进去主页面说明运行成功,

 

写java代码进行创建索引,然后查找索引

package com.solr.test;import java.io.IOException;import java.util.ArrayList;import java.util.Collection;import java.util.Iterator;import java.util.List;import org.apache.solr.client.solrj.SolrQuery;import org.apache.solr.client.solrj.SolrRequest;import org.apache.solr.client.solrj.SolrServerException;import org.apache.solr.client.solrj.impl.HttpSolrServer;import org.apache.solr.client.solrj.response.QueryResponse;import org.apache.solr.common.SolrDocument;import org.apache.solr.common.SolrDocumentList;import org.apache.solr.common.SolrInputDocument;public class CreateIndex {private HttpSolrServer server = new HttpSolrServer("http://127.0.0.1:8983/solr");public String createIndexByField(List<SolrInputDocument> docs){try {server.add(docs);server.commit();} catch (SolrServerException | IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}return null;}public void query(SolrQuery query){try {QueryResponse res = server.query(query,SolrRequest.METHOD.POST);SolrDocumentList docList = res.getResults();SolrDocument d = docList.get(0);Collection<String> keyList =  d.getFieldNames();for(String key:keyList){Object value=d.getFieldValue(key);if(value instanceof String){System.out.println(key+":"+value);}else if(value instanceof java.util.ArrayList){ArrayList l = (ArrayList)value;StringBuffer sb = new StringBuffer();for(Iterator it=l.iterator();it.hasNext();){String v = it.next().toString();sb.append(v+",");}String vv = sb.toString();int len = sb.length();int index = sb.lastIndexOf(",");if(sb.indexOf(",")>0&&(len-1)==index){vv=sb.substring(0,len-1);}System.out.println(key+":"+vv);}}System.out.println(docList.getNumFound());} catch (SolrServerException e) {// TODO Auto-generated catch blocke.printStackTrace();}}public static void main(String[] a){CreateIndex ci = new CreateIndex();List<SolrInputDocument> docs = new ArrayList<SolrInputDocument>();SolrInputDocument doc1 = new SolrInputDocument();doc1.addField("id", "id1");doc1.addField("title", "title1");docs.add(doc1);ci.createIndexByField(docs);SolrQuery query = new SolrQuery();//query.setFields("id1");//query.set("id", "id1");query.setQuery("id:id1");ci.query(query);}}


 

0 0
原创粉丝点击