使用 【Java】 集成 【Elasticsearch】:详细教程

Elasticsearch 是一个开源的分布式搜索引擎,它能够快速地存储、搜索和分析大量的文本数据。它基于 Apache Lucene 构建,广泛应用于日志分析、全文搜索、推荐系统等场景。本文将详细介绍如何在 Java 项目中集成 Elasticsearch,包括如何配置、索引文档、查询数据、以及与 Elasticsearch 进行交互的常见操作。

1. 环境准备

在开始使用 Elasticsearch 之前,确保你已经安装了以下工具:

  1. Elasticsearch:你可以通过 官方文档 下载并安装 Elasticsearch。
  2. JDK:确保你已安装 Java 8 或更高版本。可以通过 java -version 命令查看 Java 版本。
  3. Maven:Maven 是 Java 的构建工具,你可以通过 官网 安装它。

1.1 启动 Elasticsearch

  1. 下载并解压 Elasticsearch。

  2. 在解压目录中打开终端,运行以下命令启动 Elasticsearch:

bin/elasticsearch

默认情况下,Elasticsearch 会在 localhost:9200 上启动。如果启动成功,你应该能够通过浏览器或 curl 命令访问到它:

curl -X GET "localhost:9200/"

你会看到类似如下的响应:

{
  "name" : "your-node-name",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "some-uuid",
  "version" : {
    "number" : "7.x.x",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "somehash",
    "build_date" : "2020-10-01T12:34:56.789Z",
    "build_snapshot" : false,
    "lucene_version" : "8.x.x",
    "minimum_wire_compatibility_version" : "7.x.x",
    "minimum_index_compatibility_version" : "7.x.x"
  },
  "tagline" : "You Know, for Search"
}
  1. 这样,Elasticsearch 就已启动并运行。

2. 添加依赖

Elasticsearch 提供了多个官方客户端,常用的客户端有 RestHighLevelClientElasticsearch Java Client。在这篇文章中,我们将使用 RestHighLevelClient 来进行操作。

首先,确保在 Maven 的 pom.xml 文件中添加以下依赖:

<dependencies>
    <!-- Elasticsearch Rest High Level Client -->
    <dependency>
        <groupId>org.elasticsearch.client</groupId>
        <artifactId>elasticsearch-rest-high-level-client</artifactId>
        <version>7.10.0</version> <!-- 根据你本地的版本选择合适的版本 -->
    </dependency>

    <!-- Elasticsearch Core -->
    <dependency>
        <groupId>org.elasticsearch</groupId>
        <artifactId>elasticsearch</artifactId>
        <version>7.10.0</version>
    </dependency>

    <!-- Jackson用于JSON处理 -->
    <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值