【问题标题】:SolrJ connect to Solr from JavaSolrJ 从 Java 连接到 Solr
【发布时间】:2015-11-10 15:44:18
【问题描述】:

我正在尝试使用相同版本的 SolrJ 从我的 Java 代码连接到运行 5.3.1 的 Solr 服务器。我在 Eclipse 中不断收到一条消息,表明 HttpSolrServer 已被弃用,但在任何地方都找不到它已被替换的内容。有谁知道我如何使用当前的东西使用 SolrJ 从 Java 连接到 Solr? SolrJ 文档似乎都表明 HttpSolrServer 是受支持的方式,但 Eclipse 对此并不满意。

【问题讨论】:

    标签: java solr solrj


    【解决方案1】:

    从 Solr 6.1 开始,这是创建 SolrJ HTTP 客户端的首选方式:

    String urlString = "http://localhost:8983/solr/my-collection";
    SolrClient solrClient = new HttpSolrClient.Builder(urlString).build();
    

    http://lucene.apache.org/solr/6_5_0/solr-solrj/org/apache/solr/client/solrj/impl/HttpSolrClient.Builder.html

    【讨论】:

      【解决方案2】:

      Eclipse 将每个具有 @Deprecated 注释的类标记为已弃用。
      HttpSolrServer 确实已弃用,HttpSolrClient 是它的替代品

      SolrClient solrClient = new HttpSolrClient.Builder(solrLocation).build();

      【讨论】:

      • 嗨,我必须连接到 https Solr 服务器,我有用于此的密钥库文件,谁能告诉如何在创建 solrClient 时添加这些属性?
      【解决方案3】:

      公共类 SolrCient {

      private static final Logger LOGGER = Logger.getLogger(SolrCient.class.getName());
      
      private static final String SERVER_URL = "http://localhost:8983/solr/suggest";
      
      public static void main(String[] args) throws IOException, SolrServerException {
      
          HttpSolrClient solr = new HttpSolrClient(SERVER_URL);
      
          QueryResponse  response = solr.query(new SolrQuery("*:*"));
      
          System.out.println(response.toString());
      
      }
      

      }

      【讨论】:

        【解决方案4】:

        已弃用:

        SolrClient 客户端 = new HttpSolrClient(solrLocation);

        使用这个:

        SolrClient 客户端 = new HttpSolrClient.Builder(solrLocation).build();

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-12-13
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-04-13
          • 2018-08-28
          相关资源
          最近更新 更多