莫问 发表于 2016-12-14 09:56:07

solr 试试 solrj

  solr 试试 solrj
  在 solr 能运行后,就试试用 solrj 连接和访问 solr.
  参考资料(网上搜索,有很多):
  http://www.cnblogs.com/hoojo/archive/2011/10/21/2220431.html
  1. 下载和解压缩
  (1) apache-solr-3.4.0 
  (2) slf4j-1.6.1
  2. 在 Eclipse 新建一个 java 工程,例如, testsolr1
  在该工程的 Properties -> Java Build Path  -> Libraries
  点 Add External JARs
  (1)  到 apache-solr-3.4.0 解压目录下的 dist\solrj-lib  全选这些 jar 文件, 加入
  (2)  到 apache-solr-3.4.0 解压目录下的 dist 选择 apache-solr-solrj-3.4.0.jar 文件, 加入
  (3)  到 slf4j-1.6.1 解压目录 选择 slf4j-simple-1.6.1.jar 和 slf4j-simple-1.6.1-sources.jar 两文件, 加入
  3. 新建一个 Class, 例如 Test
  输入以下代码:

import org.apache.solr.client.solrj.impl.CommonsHttpSolrServer;
import org.apache.solr.common.SolrDocumentList;
import org.apache.solr.common.SolrDocument;
import org.apache.solr.client.solrj.SolrQuery;
import org.apache.solr.client.solrj.response.QueryResponse;

public class Test {
public static void main(String[] args) throws Exception {
CommonsHttpSolrServer server = null;
try
{
server = new CommonsHttpSolrServer("http://127.0.0.1:8983/solr/");
}
catch(Exception e)
{
e.printStackTrace();
}

SolrQuery query = new SolrQuery("*");
QueryResponse qr = server.query(query);
SolrDocumentList result = qr.getResults();
for (SolrDocument doc : result) {
Object id = doc.get("id");
String name = (String) doc.get("name");
System.out.println(id + " " + name);
}
}
}

   保存。
  4. 在 菜单 Run -> Run As -> Java Application
  

  即可见输出结果:
  

  这样,查询就可以得到结果。
  5. 试试添加索引记录
  在以上的代码中,加入

SolrInputDocument doc = new SolrInputDocument();
doc.addField("id", 100002);
doc.addField("name", "Solr 输入测试");
doc.addField("price", 12);
try {
// 添加一个doc文档
server.add(doc);
server.commit();
} catch (SolrServerException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
  按提示添加一些 import 例如 import org.apache.solr.common.SolrInputDocument;
  保存,再运行, 新的记录就插入,也可查询见到新添加的记录。
  :-
页: [1]
查看完整版本: solr 试试 solrj