Java如何修改elasticsearch中的数据呢?简单的讲分为两步:客户端连接上es、修改es中的数据.......
ElasticSearch提供了根据索引名称,类别,文档ID来修改数据,修改的设置数据可以是Map,Json串,自带工具。我们实际开发一般用Json;
代码片段如下:
@Test
public void testUpdate(){
JsonObject jsonObject=new JsonObject();
jsonObject.addProperty("user", "中哥");
jsonObject.addProperty("postDate", "1992-05-24");
jsonObject.addProperty("message", "学习Elasticsearch");
UpdateResponse response = client.prepareUpdate("twitter", "tweet", "1").setDoc(jsonObject.toString(),XContentType.JSON).get();
System.out.println("索引名称:"+response.getIndex());
System.out.println("类型:"+response.getType());
System.out.println("文档ID:"+response.getId()); // 第一次使用是1
System.out.println("当前实例状态:"+response.status());
}
我们运行前面的get方法,返回:
{"user":"忠哥","postDate":"1992-05-25","message":"学习Elasticsearch"}