准备配置
spring下
集群可以用 [" "," "," "]列表,中间逗号隔开。
配置之后不用手动创建client ,可以用注解直接用
常用Api
1、在指定索引下添加数据 (没有该索引会自动创建),source里最好放map
IndexRequest request = new IndexRequest().index("索引名").source(要添加的数据); //添加数据时候不需要指定id,es会自动生成id
IndexResponse index = EsUtils.client().index(request,RequestOptions.DEFAULT);
2、模糊查询()
SearchRequest request = new SearchRequest("索引名");
SearchSourceBuilder builder = new SearchSourceBuilder();
String key = "查询的数据";
builder.query(QueryBuilders.multiMatchQuery(key,"","")); //key 后面如果加要搜索的字段,不加默认检索全部。
request.source(builder);
SearchResponse response = esUtils.client().search(request,RequestOptions.DEFAULT); //搜索操作
SearchHit[] hits = response.getHits().getHits(); //获取搜索之后的数据
3、修改 (修改需要指定es的id,doc里放的是新数据。)
需要注意的是es里的修改其实是覆盖了原先id里的数据。如果是要修改某一部分数据,需要把全部数据都重新传一遍
UpdateRequest request = new UpdateRequest().index("TEST").id("1").doc(map);
UpdateResponse response = esUtils.client().update(request,RequestOptions.DEFAULT);
4、删除(删除需要提供es该条数据的id)
DeleteRequest deleteRequest = new DeleteRequest().index("").id("");
DeleteResponse delete = EsUtils.client().delete(deleteRequest, RequestOptions.DEFAULT);
5、查看索引是否存在
public static void getIndex(String indexName){
try{
GetIndexRequest request = new GetIndexRequest(indexName);
boolean exists = esUtils.client().indices().exists(request, RequestOptions.DEFAULT);
System.out.println(exists);
}catch (Exception e){
logger.info("{}:索引库已存在!",indexName);
}
}
6、批量操作
BulkRequest bulkRequest = new BulkRequest();
// bulkRequest.add 里可以写增删改操作,批量操作可以理解成 运行之后一次性执行装填在bulk里的操作
bulkRequest.add(new IndexRequest().index(“索引名”).source(“数据”));
BulkResponse bulk = esClient.bulk(bulkRequest, RequestOptions.DEFAULT);
搜索的一些JavaApi
https://blog.csdn.net/weixin_39977641/article/details/114168065
这是最基础的增删改查。
上班 剩下后续再补充