目录
3.文档操作
3.1.新增文档
3.2.查询文档
3.3.删除文档
3.4.修改文档
3.4.1.全量修改
3.4.2.增量修改
3.5.总结
3.文档操作
3.1.新增文档
语法:
POST /索引库名/_doc/文档id
{
    "字段1": "值1",
    "字段2": "值2",
    "字段3": {
        "子属性1": "值3",
        "子属性2": "值4"
    },
    // ...
} 
示例:
POST /heima/_doc/1
{
    "info": "黑马程序员Java讲师",
    "email": "zy@itcast.cn",
    "name": {
        "firstName": "云",
        "lastName": "赵"
    }
} 
响应:

3.2.查询文档
根据rest风格,新增是post,查询应该是get,不过查询一般都需要条件,这里我们把文档id带上。
语法:
GET /{索引库名称}/_doc/{id} 
通过kibana查看数据:
GET /heima/_doc/1
查看结果:

3.3.删除文档
删除使用DELETE请求,同样,需要根据id进行删除:
语法:
DELETE /{索引库名}/_doc/id值 
示例:
# 根据id删除数据 DELETE /heima/_doc/1
结果:

3.4.修改文档
修改有两种方式:
-  全量修改:直接覆盖原来的文档 
-  增量修改:修改文档中的部分字段 
3.4.1.全量修改
全量修改是覆盖原来的文档,其本质是:
-  根据指定的id删除文档 
-  新增一个相同id的文档 
注意:如果根据id删除时,id不存在,第二步的新增也会执行,也就从修改变成了新增操作了。
语法:
PUT /{索引库名}/_doc/文档id
{
    "字段1": "值1",
    "字段2": "值2",
    // ... 略
}
 
示例:
PUT /heima/_doc/1
{
    "info": "黑马程序员高级Java讲师",
    "email": "zy@itcast.cn",
    "name": {
        "firstName": "云",
        "lastName": "赵"
    }
}
 
3.4.2.增量修改
增量修改是只修改指定id匹配的文档中的部分字段。
语法:
POST /{索引库名}/_update/文档id
{
    "doc": {
         "字段名": "新的值",
    }
}
 
示例:
POST /heima/_update/1
{
  "doc": {
    "email": "ZhaoYun@itcast.cn"
  }
}
 
3.5.总结
文档操作有哪些?
-  创建文档:POST /{索引库名}/_doc/文档id { json文档 } 
-  查询文档:GET /{索引库名}/_doc/文档id 
-  删除文档:DELETE /{索引库名}/_doc/文档id 
-  修改文档: -  全量修改:PUT /{索引库名}/_doc/文档id { json文档 } 
-  增量修改:POST /{索引库名}/_update/文档id { "doc": {字段}} 
 
-  

















![[神经网络]Anchor_Free网络(YoloX,CenterNet)](https://img-blog.csdnimg.cn/7708646d041542eb8daa741d387267f7.png)

