:::tips 批量处理需要使用BulkRequest对象,其本质就是将多个普通的CRUD请求组合在一起发送,可以使用BulkRequest对象的add方法,用来添加其他多个请求,能添加的请求包括:
- IndexRequest,新增
- UpdateRequest,修改
- DeleteRequest,删除
因此向BulkRequest对象中添加多个IndexRequest,就是批量新增 :::
@SpringBootTestpublic class MyTest{//注入RestHighLevelClient对象@Autowiredprivate RestHighLevelClient restHighLevelClient;@Testpublic void test() throws IOException {//批量查询数据库中的数据List<类名> 集合对象名 = xxxService.list();//创建BulkRequest请求对象BulkRequest bulkRequest = new BulkRequest();//遍历集合for (类名 对象名 : 集合对象名) {//将对象转为文档对象文档类名 文档对象名 = new 文档类名(对象名);//在BulkRequest请求对象中添加IndexRequest请求对象bulkRequest.add(new IndexRequest(索引库名).id(文档对象名.getId().toString()).source(JSON.toJSONString(文档对象名), XContentType.JSON));}//发送请求restHighLevelClient.bulk(bulkRequest, RequestOptions.DEFAULT);}}
