elasticsearch вставляет объекты в индекс

Я новичок в elasticsearch и нуждаюсь в небольшой помощи с использованием Java API. У меня есть несколько доменных объектов Например.

@XmlRootElement

public class BasicActivity {

private String activityName;
private FullActivity activity;  
// Getters and setters
}

Я создал транспортного клиента, подключенного к узлу

Client client = new TransportClient()
        .addTransportAddress(new InetSocketTransportAddress("192.168.0.198",9300));

Есть ли простой способ вставить мой объект прямо в elasticsearch?

Я видел это

IndexResponse response = client.prepareIndex("twitter", "tweet", "1")
                    .setSource(jsonBuilder()
                                .startObject()
                                    .field("user", "kimchy")
                                    .field("postDate", new Date())
                                    .field("message", "trying out Elastic     Search")
                                .endObject()
                              )
                    .execute()
                    .actionGet();

Но для этого мне пришлось бы преобразовать каждый объект в json, что, хотя и возможно, не является моей идеальной ситуацией.

Если я не понимаю, как это работает (архитектурно), дайте мне знать, я здесь, чтобы учиться!

Ура, Роб

17
задан Giorgos Dimtsas 13 December 2011 в 15:10
поделиться