【问题标题】:Using Elasticsearch java config client in Spring Batch在 Spring Batch 中使用 Elasticsearch java config 客户端
【发布时间】:2016-12-20 05:27:46
【问题描述】:

我正在尝试编写一个自定义的弹性搜索编写器,它将在春季批处理实现中索引数据。

我可以找到以下代码作为 elasticsearch 的 Java 配置。

有人用过这个,可以分享一下在哪里调用这个配置吗?

@Configuration
   @EnableElasticsearchRepositories(basePackages = "org/springframework/data/elasticsearch/repositories")
        static class Config {

        @Value("${esearch.port}") int port;
        @Value("${esearch.host}") String hostname;

        @Bean
        public ElasticsearchOperations elasticsearchTemplate() {
        return new ElasticsearchTemplate(client());
         }

        @Bean
        public Client client(){
            TransportClient client= new TransportClient();
            TransportAddress address = new InetSocketTransportAddress(hostname, port); 
            client.addTransportAddress(address);
            return client;
        }
   }

【问题讨论】:

    标签: elasticsearch spring-batch spring-java-config


    【解决方案1】:

    您上面列出的代码基本上是指向 Elasticsearch Server 实例的传输客户端元素的实现细节,即它使用 Spring Data 定义了您的持久层。

    此代码将由您的 elasticsearch 存储库使用,即您通过从 Spring Data 扩展 - ElasticsearchRepository 定义的存储库。

    您需要在您列出的代码中编辑 @EnableElasticsearchRepositories 以实际指向您保存存储库定义的包 - 不需要其他调用。

    当您将数据写入/索引到 elasticsearch 时,您使用ElasticsearchRepository 接口,您需要定义自己的存储库,这些存储库根据您的代码中的列表与实例一起使用。

    希望对你有帮助!!

    【讨论】:

      猜你喜欢
      • 2017-07-28
      • 1970-01-01
      • 2017-12-21
      • 2016-09-23
      • 2019-07-25
      • 2017-07-05
      • 1970-01-01
      • 1970-01-01
      • 2015-12-10
      相关资源
      最近更新 更多