elasticsearch java client api簡單操做

1.引入pom文件:java

<dependency>
	    <groupId>org.elasticsearch.client</groupId>
	    <artifactId>transport</artifactId>
	    <version>5.6.0</version>
	</dependency>
	<dependency>
	    <groupId>org.apache.logging.log4j</groupId>
	    <artifactId>log4j-api</artifactId>
	    <version>2.7</version>
	</dependency>
	<dependency>
	    <groupId>org.apache.logging.log4j</groupId>
	    <artifactId>log4j-core</artifactId>
	    <version>2.7</version>
	</dependency>
複製代碼

注意client版本必定和啓動es服務版本對應,不然調用會出現錯誤,而且要增長log4j2.properties,不然也會報錯apache

2.代碼操做:json

import java.io.IOException;api

import java.net.InetAddress;elasticsearch

import java.net.UnknownHostException;學習

import org.elasticsearch.action.delete.DeleteResponse;ui

import org.elasticsearch.action.index.IndexResponse;spa

import org.elasticsearch.action.update.UpdateResponse;.net

import org.elasticsearch.client.transport.TransportClient;code

import org.elasticsearch.common.settings.Settings;

import org.elasticsearch.common.transport.InetSocketTransportAddress;

import org.elasticsearch.common.xcontent.XContentFactory;

import org.elasticsearch.transport.client.PreBuiltTransportClient;

import org.junit.After;

import org.junit.BeforeClass;

import org.junit.Test;

/** *

  • @author brucezhang

*/ public class EsCrud {

public static TransportClient transportClient;

@BeforeClass
public static void start(){
	Settings settings = Settings.builder().put("cluster.name", "elasticsearch").build();
	try {
		transportClient = new PreBuiltTransportClient(settings)
		.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("127.0.0.1"), 9300));
	} catch (UnknownHostException e) {
		e.printStackTrace();
	}
}

@Test
public void createIndex() throws IOException{
	IndexResponse indexResponse = transportClient.prepareIndex("vhddata", "wxdata","1").
			setSource(XContentFactory.jsonBuilder().startObject().
			field("name", "zpl").endObject())
			.get();
	
	System.out.println(indexResponse.getResult());
}

@Test
public void searchIndex(){
	String sourceStr = transportClient.prepareGet("vhddata", "wxdata","1").get().getSourceAsString();
	System.out.println(sourceStr);
}

@Test
public void updateIndex() throws IOException{
	UpdateResponse response = transportClient.prepareUpdate("vhddata", "wxdata","1").
			setDoc(XContentFactory.jsonBuilder().startObject().
					field("name", "zplsfsf").endObject()).get();
	
	System.out.println(response.getResult());
}

@Test
public void deleteIndex(){
	DeleteResponse deleteResponse = transportClient.prepareDelete("vhddata", "wxdata","1").get();
	System.out.println(deleteResponse.getResult());
}

@After
public void after(){
	transportClient.close();
}
複製代碼

}

3.歡迎關注個人公衆號進行一塊兒討論學習:

相關文章
相關標籤/搜索