java - spring-data-solr 数据导入处理器调用

标签 java solr spring-data spring-data-solr

我正在使用 spring-data-solr并且有data import handler(DIH)在解决方案中。我如何通过存储库或 SolrTemplate 或其他方式调用 DIH?

最佳答案

我建议使用 SolrCallback 的自定义存储库来执行所需的请求。

    @Override
    public SolrResponse dataImport(final String command) {

      return solrTemplate.execute(new SolrCallback<SolrResponse>() {

        @Override
        public SolrResponse doInSolr(SolrServer solrServer) throws SolrServerException, IOException {
          return new SolrRequest(METHOD.GET, "/dataimport?command=" + command) {

            //..skipped some methods to shorten

            @Override
            public SolrResponse process(SolrServer server) throws SolrServerException, IOException {
              SolrResponseBase response = new SolrResponseBase();
              response.setResponse(server.request(this));
              return response;
            }

          }.process(solrServer);

        }
      });
    }

关于java - spring-data-solr 数据导入处理器调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20681833/

相关文章:

mysql - 使用 Solr 搜索

java - Spring Data 存储库是如何实际实现的?

java - 如何在 java 或 groovy 中查找两个日期之间的天数?

java - 两个线程如何进入两个持有同一对象锁的同步块(synchronized block)

java - 查找 t 测试用例中 number 的除数个数

ruby-on-rails - 如何直接从 Github 而不是通过 Rubygems 使用 Sunspot 的边缘版本?

java - SSH 连接到 MySQL

Solr 多选事实忽略其他选定的方面

java - 我是否需要为 Spring Data 中的可审计字段提供 getter/setter?

hibernate - 在 EJB 计时器中使用 Spring Data JPA 存储库会导致 TransactionRequiredException