文章目录
索引查询
- 索引查询
- 索引删除
执行如下代码, 对上一步创建的索引进行查询操作
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.GetIndexRequest;
import org.elasticsearch.client.indices.GetIndexResponse;
/**
* 类名称:ESTest_Client
* 类描述: 创建索引
*
* @author:
* 创建时间:2022/1/11 21:05
*/
public class ESTest_Index_Search {
public static void main(String[] args) throws Exception {
RestHighLevelClient esClient = null;
// 创建ES客户端
try {
esClient = new RestHighLevelClient(
RestClient.builder(new HttpHost("127.0.0.1", 9200, "http"))
);
GetIndexRequest request = new GetIndexRequest("sysuser");
GetIndexResponse getIndexResponse = esClient.indices().get(request, RequestOptions.DEFAULT);
System.out.println("索引别名:" + getIndexResponse.getAliases());
System.out.println("索引mapping:" + getIndexResponse.getMappings().keySet());
System.out.println("索引setting:" + getIndexResponse.getSettings());
} finally {
if (esClient != null) {
// 关闭ES客户端
esClient.close();
}
}
}
}
调用GetIndexRequest
查询请求, 获取查询请求的响应GetIndexResponse
控制台打印如下:
索引别名:{sysuser=[]}
索引mapping:[sysuser]
索引setting:{sysuser={"index.creation_date":"1641944880743","index.number_of_replicas":"1","index.number_of_shards":"1","index.provided_name":"sysuser","index.routing.allocation.include._tier_preference":"data_content","index.uuid":"-Oo-Y8jKRsm70r1UqHX58w","index.version.created":"7160299"}}
如果用http 查询索引, 则发送如下的get请求 http://127.0.0.1:9200/sysuser
获得的响应如下, 和用java获取的一致.
{
"sysuser": {
"aliases": {},
"mappings": {},
"settings": {
"index": {
"routing": {
"allocation": {
"include": {
"_tier_preference": "data_content"
}
}
},
"number_of_shards": "1",
"provided_name": "sysuser",
"creation_date": "1641944880743",
"number_of_replicas": "1",
"uuid": "-Oo-Y8jKRsm70r1UqHX58w",
"version": {
"created": "7160299"
}
}
}
}
}
索引删除
删除名称为sysuser1的索引 删除索引的代码如下
import org.apache.http.HttpHost;
import org.elasticsearch.action.admin.indices.delete.DeleteIndexRequest;
import org.elasticsearch.action.support.master.AcknowledgedResponse;
import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestHighLevelClient;
/**
* 类名称:ESTest_Client
* 类描述: 创建索引
*
* @author:
* 创建时间:2022/1/11 21:05
*/
public class ESTest_Index_Delete {
public static void main(String[] args) throws Exception {
RestHighLevelClient esClient = null;
// 创建ES客户端
try {
esClient = new RestHighLevelClient(
RestClient.builder(new HttpHost("127.0.0.1", 9200, "http"))
);
DeleteIndexRequest request = new DeleteIndexRequest("sysuser1");
AcknowledgedResponse acknowledgedResponse = esClient.indices().delete(request, RequestOptions.DEFAULT);
System.out.println("索引结果:" + acknowledgedResponse.isAcknowledged());
} finally {
if (esClient != null) {
// 关闭ES客户端
esClient.close();
}
}
}
}
运行后响应如下 删除成功. 查询所有的索引, 可以看到索引已经没有了.