ElasticSearch JAVA入门增删改查CURD
1.添加 ElasticSearch 依赖
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.39</version>
</dependency>
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>transport</artifactId>
<version>5.5.2</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.17</version>
</dependency>
</dependencies>
2.获取客户端
TransportClient client = new PreBuiltTransportClient(Settings.EMPTY)
.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName(HOST), PORT));
3.创建索引
// 从数据库里面查数据
List<Map<String, Object>> lists = JDBC_UTIL.findResult("select * from article", null);
System.out.println(lists);
for (Map<String, Object> map : lists) {
IndexResponse response = client.prepareIndex("article", "article").setSource(map).get();
System.out.println("索引名称:" + response.getIndex());
System.out.println("类型:" + response.getType());
System.out.println("文档ID:" + response.getId());
System.out.println("当前实例状态:" + response.status());
System.out.println("*****************************************************");
}
4.查询ElasticSearch数据
GetResponse response = client.prepareGet("article", "article", "AWKFM92NOULKkJtSaIx_").get();
String data = response.getSourceAsString();
System.out.println("index=" + index + "--->type=" + type + "--->id=" + id + "--->data=" + data);
5.更新ElasticSearch数据
String json = "{\"update_time\":\"2018-04-02 17:50:21\",\"create_time\":\"2018-04-02 17:50:21\",\"subject\":\""闺蜜"崔顺实被韩检方传唤 韩总统府促彻查真相\",\"author\":\"weiwei\",\"id\":1}";
UpdateResponse response = client.prepareUpdate("article", "article", "AWKFM92NOULKkJtSaIx_").setDoc(json, XContentType.JSON).get();
System.out.println("索引名称:" + response.getIndex());
System.out.println("类型:" + response.getType());
System.out.println("文档ID:" + response.getId());
System.out.println("当前实例状态:" + response.status());
6.删除ElasticSearch数据
DeleteResponse response = client.prepareDelete("article", "article", "AWKFM92NOULKkJtSaIx_").get();
System.out.println("索引名称:"+response.getIndex());
System.out.println("类型:"+response.getType());
System.out.println("文档ID:"+response.getId());
System.out.println("当前实例状态:"+response.status());