java中的solrj连接
嗨,我正在为solrj开发几个示例程序,我很难确定我是否正确连接了它。这是我的代码java中的solrj连接,java,solr,jetty,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.Q
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);
}
}
上述代码的输出为:
{time=219.0,sub1={time=125.0,sub1.1={time=0.0}}
另一方面,如果我使用这个:
SolrServer solr = new CommonsHttpSolrServer("localhost:8983/solr");
据说那是失礼的
我很困惑,因为我可以通过本地主机访问我计算机中的solr admin,但我不能在我的程序中访问
非常感谢如果有人能提供帮助您不应该在URL上指定协议吗:
SolrServer solr=newcommonHttpSolrserver(“http://localhost:8983/solr");代码>
我做了一个简单的测试,如果我不这样做,我会得到一个错误。然而,我在我的项目中使用Solr3.4。。。我没有收到“弃用”警告,根据文档,确实建议在solr()的更高版本中使用“HttpSolrServer”。您不应该在URL上指定协议吗:
SolrServer solr=newcommonHttpSolrserver(“http://localhost:8983/solr");代码>
我做了一个简单的测试,如果我不这样做,我会得到一个错误。然而,我在我的项目中使用Solr3.4。。。我没有收到“弃用”警告,根据文档,确实建议在solr()的更高版本中使用“HttpSolrServer”。
- 对于Solrj 4.x,您必须使用HttpSolrServer:
SolrServer SolrServer=新的HttpSolrServer(“”)
或“
- 另外,对于Solr Cloud,您可以使用CloudSolrServer,参数为ApacheZooKeeper的url:
SolrServer cloudSolrServer=新的cloudSolrServer(“htt p://localhost:2181”)
查看Apache Solr wiki页面了解更多信息:
- 对于Solrj 4.x,您必须使用HttpSolrServer:
SolrServer SolrServer=新的HttpSolrServer(“”)
或“
- 另外,对于Solr Cloud,您可以使用CloudSolrServer,参数为ApacheZooKeeper的url:
SolrServer cloudSolrServer=新的cloudSolrServer(“htt p://localhost:2181”)
查看Apache Solr wiki页面了解更多信息:我编辑了示例程序并使用了您声明的url:SolrServer Solr=new commonHttpSolrServer(“);但我仍然收到了不推荐的警告。我使用Solr 3.6.0,也尝试了Solr 4.2.1。我将尝试Solr 3.4。谢谢您需要指定“HTTP://,我在您的代码段中没有看到它。在Solr 3.4中,CommonHttpSolrServer并没有被弃用,但是如果您开始使用Solr,您应该使用更新的版本,并按照文档中的建议使用HttpSolrServer。我编辑了示例程序并使用了您声明的url:SolrServer Solr=new CommonHttpSolrServer(“);但我仍然收到了不推荐的警告。我正在使用solr 3.6.0,还尝试了solr 4.2.1。我将尝试solr 3.4。谢谢您需要指定“HTTP://,我在您的代码段中没有看到它。在Solr 3.4中,CommonHttpSolrServer并没有被弃用,但是如果您开始使用Solr,您应该使用更新的版本,并按照文档中的建议使用HttpSolrServer。