Spring Boot-配置弹性搜索

时间:2018-07-25 03:05:29

标签: java spring spring-boot elasticsearch

我想配置ElasticSearch

使用Boot版本1.5.1就像这样,并且可以正常工作。

import {Tooltip as BTooltip} from 'react-bootstrap';
import Tooltip from 'rc-tooltip';

现在,我想使其与Spring Boot 2.0.3一起使用,但没有任何效果。我成功地更改了builder()和其他方法,但仍然无法编译。 我参考了官方文档,但是它谈到了一个N​​odeBuilder,但我找不到它。

阅读此问题NodeBuilder not found in the ElasticSearch API application,我发现您现在必须通过构建器实例化该问题,但是接下来我该通过哪种方式进行配置? 有没有更新的例子?我应该看什么文件?

其他示例无效,例如:

https://github.com/spring-projects/spring-boot/tree/master/spring-boot-samples/spring-boot-sample-data-elasticsearch

@Configuration
@EnableElasticsearchRepositories(basePackages = "com.example.book.repository")
public class EsConfig {

    @Value("${elasticsearch.host}")
    private String EsHost;

    @Value("${elasticsearch.port}")
    private int EsPort;

    @Value("${elasticsearch.clustername}")
    private String EsClusterName;

    @Bean
    public Client client() throws Exception {

        Settings esSettings = Settings.settingsBuilder()
                .put("cluster.name", EsClusterName)
                .build();

        //https://www.elastic.co/guide/en/elasticsearch/guide/current/_transport_client_versus_node_client.html
        return TransportClient.builder()
                .settings(esSettings)
                .build()
                .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName(EsHost), EsPort));
    }

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

}

(我的服务器正在工作,过去的spring-boot + es组合正常,并且启用了elasticsearch服务器)

http://www.baeldung.com/spring-data-elasticsearch-tutorial

不适用于我的pom(许多类与我以前使用的版本不同,直到新版本为止)。

我安装了弹性搜索,我知道地址(本地主机)以及端口和群集名称,我想连接到该地址。

pom.xml

failed to load elasticsearch nodes : org.elasticsearch.client.transport.NoNodeAvailableException: None of the configured nodes are available: [{#transport#-1}{VrVmfWsVQ6

0 个答案:

没有答案