且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

使用java api操作es需要注意的地方(Elasticsearch开启shield插件之后)

更新时间:2022-08-26 15:15:14

需要执行下面步骤

https://www.elastic.co/guide/en/shield/current/_using_elasticsearch_java_clients_with_shield.html

 

 

1:在java项目中的pom文件中添加maven依赖

使用java api操作es需要注意的地方(Elasticsearch开启shield插件之后)
<repositories>
<!-- add the elasticsearch repo -->
<repository>
  <id>elasticsearch-releases</id>
  <url>https://maven.elasticsearch.org/releases</url>
  <releases>
    <enabled>true</enabled>
  </releases>
  <snapshots>
    <enabled>false</enabled>
  </snapshots>
</repository>
</repositories>
 
<!-- add the shield jar as a dependency -->
<dependency>
  <groupId>org.elasticsearch.plugin</groupId>
  <artifactId>shield</artifactId>
<version>2.4.3</version>
</dependency>

注意:shield的maven依赖版本必须是2.4.3的,官方例子写的是2.2.0的无法正常运行。因为我们的shield安装的版本也是2.4.3、要保持版本一致。
使用java api操作es需要注意的地方(Elasticsearch开启shield插件之后)

 

 

 

 

2:代码如下:

使用java api操作es需要注意的地方(Elasticsearch开启shield插件之后)
Settings settings = Settings.settingsBuilder()
.put("cluster.name", "elasticsearch")
//设置shield创建的用户名和密码
.put("shield.user", "es_admin:123456")
.build();
TransportClient client = TransportClient.builder()
//添加shield plugin
.addPlugin(ShieldPlugin.class)
.settings(settings).build();
client.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("192.168.80.100"), 9300));
使用java api操作es需要注意的地方(Elasticsearch开启shield插件之后)