黑猴子的家:Elasticsearch API 之 更新文档数据(upsert)

1、Code -> GitHub

https://github.com/liufengji/elasticsearch_api.git

2、源代码

设置查询条件, 查找不到则添加IndexRequest内容,查找到则按照UpdateRequest更新。

    @Test
    public void testUpsert() throws Exception {

        // 设置查询条件, 查找不到则添加
        IndexRequest indexRequest = new IndexRequest("blog", "article", "5")
                .source(XContentFactory.jsonBuilder().startObject().field("title", "搜索服务器").field("content","它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。").endObject());
        
        // 设置更新, 查找到更新下面的设置
        UpdateRequest upsert = new UpdateRequest("blog", "article", "5")
                .doc(XContentFactory.jsonBuilder().startObject().field("user",
                 "李四").endObject()).upsert(indexRequest);

        client.update(upsert).get();
        client.close();
    }

3、第一次执行 查看

hadoop102:9200/blog/article/5


4、第二次执行 查看

hadoop102:9200/blog/article/5


你可能感兴趣的:(黑猴子的家:Elasticsearch API 之 更新文档数据(upsert))