直接上代码:
public void testBulkIndex() throws Exception { NodeBuilder builder = NodeBuilder.nodeBuilder(); String clusterName = PropertyManager.getContextProperty("cluster.name"); builder.clusterName(clusterName); Node node = builder.node(); Client client = node.client(); ObjectMapper mapper = new ObjectMapper(); List<Person> persons = new ArrayList<Person>(); List<IndexRequest> requests = new ArrayList<IndexRequest>(); for (int i = 0; i < 10; i++) { Person person = new Person(); person.setAge(20 + i); person.setId(UUID.randomUUID().toString()); person.setIsStudent(true); person.setName("张三" + i); person.setSex("男"); persons.add(person); String index = "user"; // 相当于数据库名 String type = "tb_person"; // 相当于表名 String json = mapper.writeValueAsString(person); IndexRequest request = client .prepareIndex(index, type, person.getId()).setSource(json) .request(); requests.add(request); } BulkRequestBuilder bulkRequest = client.prepareBulk(); for (IndexRequest request : requests) { bulkRequest.add(request); } BulkResponse bulkResponse = bulkRequest.execute().actionGet(); if (bulkResponse.hasFailures()) { Assert.fail("批量创建索引错误!"); } }