1 创建client

Settings settings = Settings.builder().put("cluster.name", "UBA").put("client.transport.sniff", true)
    .build();
TransportClient client = new PreBuiltTransportClient(settings)
    .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("127.0.0.1"), 9300));

然后就可以愉快的用client来进行索引、检索、删除、批量处理、局部更新等等操作。这里的坑在以下两点:

  1. 9300端口的设置,用RestAPI的时候用的是9200端口,然而这里是9300端口
  2. Java API的版本问题,最新的5.2及以上版本跟5.2以下版本的API变化很大,建议以官网为准

2 操作

2.1 索引操作

Map<String, Object> json = new HashMap<String, Object>();
json.put("user", "kimchy");
json.put("postDate", new Date());
json.put("message", "trying out Elasticsearch");
IndexResponse response = client.prepareIndex("pkulab", "stu").setSource(json).get();

这里没什么坑,需要注意的是response的类型不同是IndexResponse类型

2.2 检索操作

GetResponse response = client.prepareGet("pkulab", "stu", "AVrBY_Biq_5jx39izzQQ").get();

2.3 删除操作

DeleteResponse response = client.prepareDelete("pkulab", "stu", "1").get();

其他操作以及注意事项逐渐加。。。

登录发表评论 注册

反馈意见