目录
第4关:Java操作Elasticsearch——修改与删除
第1关:Java连接Elasticsearch
任务描述
本关任务:通过 Java 来连接 Elasticsearch 。
相关知识
为了完成本关任务,你需要掌握:
Elasticsearch 版本区别。
Java 连接 Elasticsearch 。
Elasticsearch版本区别
我们平时制作 JAVA 的 web 项目,可能会使用 Elasticsearch 搜索引擎,我们就需要去连接 Elasticsearch 服务器。
本实训使用的是 Elasticsearch 6.5.4版本的,与 Elasticsearch 5.x版本还是有一些区别的。
1、因为 Elasticsearch 5.x 索引下支持多种type,现在 Elasticsearch 6.x 索引下只能有一种 type 。
2、Elasticsearch 5.x支持string类型字段,现在 Elasticsearch 6.x中的string类型字段被拆分成两种新的数据类型: text用于全文搜索的, 而keyword用于关键词搜索。
3、Java 连接 Elasticsearch 区别。
//以前Java连接5.x版本
Client client = TransportClient.builder().build()
.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("127.0.0.1"), 9300))
//现在连接6版本的,需要设置集群名称
Settings settings = Settings.builder().put("cluster.name", "my-application").build();
//连接ES
TransportClient client = new PreBuiltTransportClient(settings)
.addTransportAddresses(new TransportAddress(InetAddress.getByName(HOST), PORT));
PreBuiltTransportClient:用来搜索集群状态。
addTransportAddresses:添加ip地址及端口号。
Java连接Elasticsearch
连接 Elasticsearch 代码如下:
public final static String HOST = "127.0.0.1";
public final static int PORT = 9300;//http请求的端口是9200,客户端是9300
public static void main(String[] args) throws UnknownHostException {
// 设置集群名称
Settings settings = Settings.builder().put("cluster.name", "my-application").build();
// 创建client
//搜索集群状态
//java客户端的方式是以tcp协议在9300端口上进行通信
TransportClient client = new PreBuiltTransportClient(settings)
.addTransportAddresses(new TransportAddress(InetAddress.getByName(HOST), PORT));
}
编程要求
在右侧文件中在Begin-End区域编写连接 Elasticsearch 代码,在点击测评前,请在右侧命令行手动启动 Elasticsearch。
su es
/opt/install/elasticsearch-6.5.4/bin/elasticsearch
点击测评查看是否连接成功。
代码
package com.test;
import org.elasticsearch.client.transport.TransportClient;
import org.elasticsearch.common.settings.Settings;
import org.elasticsearch.common.transport.TransportAddress;
import org.elasticsearch.transport.client.PreBuiltTransportClient;
import java.net.InetAddress;
import java.net.UnknownHostException;
public class ElasticsearchTest1 {
// 服务器地址,本机
public final static String HOST = "127.0.0.1";
//http请求的端口是9200,客户端是9300
public final static int PORT = 9300;
public static void main(String[] args) throws UnknownHostException {
/**************** Begin ****************/
// 设置集群名称
Settings settings = Settings.builder().put("cluster.name", "my-application").build();
// 创建client
//搜索集群状态
//java客户端的方式是以tcp协议在9300端口上进行通信
TransportClient client = new PreBuiltTransportClient(settings)
.addTransportAddresses(new TransportAddress(InetAddress.getByName(HOST), PORT));
/**************** End ****************/
if(client.toString().contains("org.elasticsearch.transport.client.PreBuiltTransportClient@")){
System.out.println("连接成功");
}else{
System.out.println("连接失败");
}
//关闭客户端
client.close();
}
}
第2关:Java操作Elasticsearch——新增
任务描述
本关任务:通过 Java

最低0.47元/天 解锁文章
516

被折叠的 条评论
为什么被折叠?



