pom配置
<repositories> <repository> <id>elasticsearch-releases</id> <url>https://artifacts.elastic.co/maven</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories>
引入依赖切换
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-elasticsearch</artifactId> <version>2.1.3.RELEASE</version> </dependency>
变更为
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-elasticsearch</artifactId> <exclusions> <exclusion> <groupId>org.elasticsearch.client</groupId> <artifactId>transport</artifactId> </exclusion> </exclusions> </dependency> <!-- https://mvnrepository.com/artifact/org.elasticsearch.client/x-pack-transport --> <dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>x-pack-transport</artifactId> <version>5.6.1</version> </dependency>
x-pack-transport 版本注意切换到和es环境一致的版本
yml配置文件中es相关配置就可以去掉,然后写一个bean注入配置
@Bean public TransportClient transportClient() throws UnknownHostException { TransportClient client = new PreBuiltXPackTransportClient(Settings.builder() .put("cluster.name", "docker-cluster") .put("xpack.security.user", "elastic:changeme") .build()) .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("127.0.0.1"), 9300)); return client; }
说明: elastic 默认用户名
changeme 默认密码
cluster.name 集群名称,和es配置保持一致
4. ok 这样就可以继续访问es了
5. 源码地址,切换es分之