1. 创建文档
1.1 创建一个文档
在相应的索引下面使用_doc创建文档,地址为:http://127.0.0.1:9200/students/_doc,创建一个姓名张三的学生信息:
{"姓名":"张三","年级":5,"班级":2,"性别":"男","成绩":{"语文":89,"数学":92.5}
}
返回的result为created表示创建成功。_id属性表示新创建文档的唯一性表示,其对应的version为1。如果执行多次,会创建多个内容相同的文档信息(id不同)。这个索引由ES随机生成,不容易记住。
1.3 创建指定id的文档
ES生成的索引没有业务含义,也不容易记忆,并且多次发送回生成多个id不同内容相同的文档,可以在生成文档的路径后面指定索引,例如创建学生李四,索引为2023_5_2_1,表示2023年5年级2班编号为1的学生:
请求路径:http://127.0.0.1:9200/students/_doc/2023_5_2_1
请求body:
{"姓名": "李四","年级": 5,"班级": 2,"性别": "男","成绩": {"语文": 65,"数学": 78}
}
重复执行表示全量更新,除了更新内容回覆盖外,version版本也会增加。
1.4 指定创建操作创建文档
_do替换为_create表示文档操作为创建,如果文档已经被创建,则会创建失败。
重复创建会失败:
1.5 局部更新
使用update+文档Id更新指定的文档,例如,更新李四的学习成绩,请求路径为:http://127.0.0.1:9200/students/_update/2023_5_2_1,请求体为:
{"doc": {"成绩": {"语文": 95,"数学": 92.5}}
}
2. 文档查询
2.1 查询指定文档
使用get+id查询指定文档
found为查询结果, _source为查询结果内容。
3. 删除文档
3.1 删除指定id的文档
使用DELETE操作删除文档: