irpas技术客

【ES】JavaAPI学习-01 环境配置 索引创建_锥栗_es java 创建索引

网络 2044

前言

本文档及关联项目用于ElasticSearch的JavaAPI的学习。

本节将完成环境配置,索引创建

环境

JDK8

IntelliJ IDEA 2021.2.3 (Community Edition)

Postman-win64-8.12.4

elasticsearch-7.15.0-windows-x86_64

实现 启动ES和POSTMAN

找到elasticsearch的安装路径,打开bin文件夹

打开elasticsearch.bat 文件 稍等片刻,看到

则其启动成功。

可以测试一下 http://127.0.0.1:9200/ 是否能打开。

然后启动POSTMAN,我用的是POSTMAN客户端:

项目创建

创建一个新项目 取名为:ElasticSearch-JavaAPI-learning

依赖配置

pom.xml

<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://·piler.source>8</maven.compiler.source> <maven.compiler.target>8</maven.compiler.target> </properties> <dependencies> <dependency> <groupId>org.elasticsearch</groupId> <artifactId>elasticsearch</artifactId> <version>7.8.0</version> </dependency> <!-- elasticsearch 的客户端 --> <dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>elasticsearch-rest-high-level-client</artifactId> <version>7.8.0</version> </dependency> <!-- elasticsearch 依赖 2.x 的 log4j --> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>2.8.2</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.8.2</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.9.9</version> </dependency> <!-- junit 单元测试 --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> </dependencies> </project>

配置好之后记得更新maven

es

在src.main.java下创建com.zwy.es文件夹:

创建测试客户端

ESTest_Client.java

package com.zwy.es; import org.apache.http.HttpHost; import org.elasticsearch.client.RestClient; import org.elasticsearch.client.RestHighLevelClient; import sun.rmi.transport.TransportConstants; import java.io.IOException; public class ESTest_Client { public static void main(String[] args) throws IOException { // 创建ES客户端 RestHighLevelClient esClient = new RestHighLevelClient( RestClient.builder(new HttpHost("localhost", 9200, "http")) ); // 关闭ES客户端 esClient.close(); } }

ESTest_Index_Create.java

package com.zwy.es; import org.apache.http.HttpHost; import org.elasticsearch.client.RequestOptions; import org.elasticsearch.client.RestClient; import org.elasticsearch.client.RestHighLevelClient; import org.elasticsearch.client.indices.CreateIndexRequest; import org.elasticsearch.client.indices.CreateIndexResponse; import java.io.IOException; public class ESTest_Index_Create { public static void main(String[] args) throws IOException { // RestHighLevelClient esClient = new RestHighLevelClient( RestClient.builder(new HttpHost("localhost", 9200, "http")) ); // 创建索引 CreateIndexRequest request = new CreateIndexRequest("users"); // 创建请求对象 CreateIndexResponse createIndexResponse = esClient.indices().create(request, RequestOptions.DEFAULT); // 返回响应 // 响应状态 boolean acknowledged = createIndexResponse.isAcknowledged(); System.out.println("索引操作 : " + acknowledged); // 关闭ES客户端 esClient.close(); } } 文件结构

项目文件结构如下:

运行

先运行ESTest_Client.java

没有报错。

这时打开postman,创建一个请求的collection:

我把它命名为ES基础操作。

然后创建一个 GET 请求(request)如下:

http://127.0.0.1:9200/_cat/indices?v

点击 Send 搜索索引,应该没有出现 users的索引,如果有,可以自己修改ESTest_Index_Create.java的CreateIndexRequest中的入参。

则继续运行ESTest_Index_Create.java

运行成功,返回true,这时在回到POSTMAN中调用刚刚的 GET 请求,可以看到:

成功创建users索引。


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #es #JAVA #创建索引 #环境JDK8IntelliJ #Idea #202123 #Community