在 Elasticsearch 8.x 的 Java 客户端中,官方推荐使用 Elasticsearch Java Client(也称为 new Java client),以区别于旧版的 Transport Client(已在 7.x 中 deprecated,8.x 完全移除)。
其核心 API 及组件的标准叫法如下:

  1. 客户端核心类
    ElasticsearchClient:高级别客户端入口类,提供所有操作 Elasticsearch 的方法(索引、查询、更新等),基于底层 REST 客户端封装。
    RestClient:低级别 REST 客户端(org.elasticsearch.client.RestClient),负责与 Elasticsearch 集群的 HTTP 通信,ElasticsearchClient 依赖它创建。
    ClientConfiguration:客户端配置类,用于设置集群地址、超时时间、认证信息等。
  2. 操作相关类
    IndexRequest / IndexResponse:索引文档的请求 / 响应类(对应 index 操作)。
    SearchRequest / SearchResponse:搜索文档的请求 / 响应类(对应 search 操作)。
    UpdateRequest / UpdateResponse:更新文档的请求 / 响应类(对应 update 操作)。
    DeleteRequest / DeleteResponse:删除文档的请求 / 响应类(对应 delete 操作)。
  3. 查询构建器
    QueryBuilders:静态工具类,用于构建各种查询条件(如 matchQuery、termQuery、boolQuery 等)。
    BoolQuery:布尔查询(组合 must、should、mustNot 等子句)。
    TermQuery:精确匹配查询(针对关键词类型字段)。
    MatchQuery:全文匹配查询(针对文本类型字段,会分词)。
  4. 其他关键组件
    Mapping:索引映射(定义字段类型、分词器等),通过 putMapping 操作配置。
    BulkRequest:批量操作请求(可批量执行索引、更新、删除)。
    Scroll:滚动查询(用于高效获取大量结果,替代旧版 scroll API)。
    PointInTime:时间点查询(8.x 推荐,替代 scroll 用于分页查询)。
Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐