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