java - java中的solrj连接

标签 java solr jetty solrj

嗨,我正在为 solrj 开发几个示例程序,但我无法确定我是否正确连接。这是我的代码

import org.apache.solr.client.solrj.SolrServer;
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.params.ModifiableSolrParams;

import java.net.MalformedURLException;

public class SolrExample {
  public static void main(String[] args) throws MalformedURLException,    SolrServerException {
//SolrServer solr = new CommonsHttpSolrServer("localhost:8983/solr");
SolrServer server = new HttpSolrServer("localhost:8983/solr/");


ModifiableSolrParams params = new ModifiableSolrParams();
params.set("qt", "/spellCheckCompRH");
params.set("q", "epod");
params.set("spellcheck", "on");
params.set("spellcheck.build", "true");

QueryResponse response = server.query(params);
System.out.println("response = " + response);
  }
}

上面代码的输出是: {时间=219.0,sub1={时间=125.0,sub1.1={时间=0.0}}}

另一方面,如果我使用这个:

     SolrServer solr = new CommonsHttpSolrServer("localhost:8983/solr");

据说已经被废弃了..

我很困惑,因为我可以通过本地主机访问计算机中的 solr 管理员,但我不能在我的程序中访问..

如果有人能提供帮助,非常感谢

最佳答案

  • 对于 Solrj 4.x,您必须使用 HttpSolrServer:
    SolrServer solrServer = new HttpSolrServer("http://localhost:8983/solr ");
    或“http://localhost:8983/solr/solrCoreName

  • 奖励,对于 Solr Cloud,您可以将 CloudSolrServer 与 Apache ZooKeeper 的 url 参数一起使用:
    SolrServer cloudSolrServer = new CloudSolrServer("htt p://localhost:2181");

查看 Apache Solr wiki 页面以获取更多信息:wiki.apache.org/solr/FrontPage

关于java - java中的solrj连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17804006/

相关文章:

java - 以编程方式访问 JMX 控制台的简单方法

spring-boot - 使用 Spring Boot 打包时找不到 Jython 模块?

java - 如果在selenium java中等待时间到期之前找到一个元素,如何单击该元素?

java - 在 Java 中运行 JavaScript 的最佳方式是什么?

java - Spring Data MongoDB 聚合与日期和平均值匹配

http - Solr 通过 HTTP 上的游标将文档获取为 CSV

node.js - 禁用在 solr 中提交以加快索引编制的需要

apache - 将 Nutch 与最新的 Elasticsearch 结合使用

java - 是否可以使用java更改ldap中用户的基本DN?

java - Apache Solr 间歇性关闭