Java High Level Rest Client删除索引API导入及差异相关问询
Java High Level Rest Client删除索引API说明
实现方案
删除索引的API在Java High Level Rest Client中已提供,你找不到对应的导入是因为新客户端对返回类做了重构,不再使用原来的DeleteIndexResponse类。
需导入的类
import org.elasticsearch.client.indices.DeleteIndexRequest; import org.elasticsearch.action.support.master.AcknowledgedResponse; import org.elasticsearch.client.RequestOptions;
完整代码示例
public boolean deleteIndex(String indexName) throws IOException { DeleteIndexRequest deleteRequest = new DeleteIndexRequest(indexName); AcknowledgedResponse deleteResponse = client.indices().delete(deleteRequest, RequestOptions.DEFAULT); // isAcknowledged返回true代表集群已确认删除索引成功 return deleteResponse.isAcknowledged(); }
两种导入路径的差异
org.elasticsearch.action.admin.indices.*:属于已弃用的Transport Client专属API包。Transport Client基于TCP协议和Elasticsearch集群通信,早期版本将所有集群、索引管理类都统一放在admin层级下,该客户端在7.x版本标记为弃用,8.x版本已完全移除,官方不再维护。org.elasticsearch.client.indices.*:属于当前官方推荐的Java High Level Rest Client专属API包。该客户端基于HTTP协议通信,重构了原有的API层级,去掉了冗余的admin调用层,索引操作直接通过client.indices()入口调用,接口设计更清晰规范。
内容的提问来源于stack exchange,提问作者Aditya
相关产品推荐
相关产品推荐

