大數據技術之Elasticsearch-Java API操作(一)API基本操作
新建文檔(源數據es構建器添加json)
1)源代碼
| @Test public void createIndex() throws Exception {
// 1 通過es自帶的幫助類,構建json數據 XContentBuilder builder = XContentFactory.jsonBuilder().startObject().field("id", 3).field("title", "基於Lucene的搜索服務器").field("content", "它提供了一個分布式多用戶能力的全文搜索引擎,基於RESTful web接口。") .endObject();
// 2 創建文檔 IndexResponse indexResponse = client.prepareIndex("blog", "article", "3").setSource(builder).get();
// 3 打印返回的結果 System.out.println("index:" + indexResponse.getIndex()); System.out.println("type:" + indexResponse.getType()); System.out.println("id:" + indexResponse.getId()); System.out.println("version:" + indexResponse.getVersion()); System.out.println("result:" + indexResponse.getResult());
// 4 關閉連接 client.close(); } |
2)結果查看

********自己操作********
Java代碼:
// 四、新建文檔--使用es
@Test public void createDocByXContent() throws Exception { // 源數據es構建器添加json
XContentBuilder builder = XContentFactory.jsonBuilder().startObject().field("id", 3) .field("title", "基於Lucene的搜索服務器").field("content", "它提供了一個分布式多用戶能力的全文搜索引擎,基於RESTful web接口").endObject(); // 創建文檔 // 注意:這里沒有傳第三個數-ID,但是ES依然會自動產生ID的
IndexResponse indexResponse = client.prepareIndex("blog", "article").setSource(builder).execute().actionGet(); // 打印返回結果
System.out.println("index:" + indexResponse.getIndex()); System.out.println("type:" + indexResponse.getType()); System.out.println("id:" + indexResponse.getId()); System.out.println("version:" + indexResponse.getVersion()); System.out.println("result:" + indexResponse.getResult()); // 關閉連接
client.close(); }
結果:


