私は現在、Hibernateを使用したSpringデータからElasticSearchを使用したSpringデータに変換しています。SpringデータでElasticSearchを使用すると自動的に数値IDを生成
以前は、@GeneratedValue(strategy = GenerationType.IDENTITY)
という注釈を使用して、自分のエンティティのIDを自動生成できました。このようにして、エンティティが保存されると、ID番号が生成されます。
しかし、ElasticSearchが同じ結果を達成するために使用するアノテーションは見つからないようです。
にHibernateアノテーションを使用してエンティティ:@GeneratedValue注釈にElasticSearch当量が
@Entity
@Table(name = "person")
public class Person {
@Id
@Column(name = "id")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long id;
@Column(name = "name")
private String name;
@Column(name = "age")
private int age;
public long getId() {
return id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Person() {
}
public Person(String name, int age) {
this.name = name;
this.age = age;
}
@Override
public String toString() {
return "Person [id=" + id + ", name=" + name + ", age=" + age + "]";
}
ありますか?そうでない場合は、ElasticSearchを使用しているときにidフィールドを設定する最適な方法は何ですか?
感謝を。このエリアでElasticSearchの経験がありますか? – pike
申し訳ありませんが、ElasticSearchでHibernateを使用していたことを理解しました。純粋なElasticSearch APIを使用している場合は、ここに記載されているPOSTを使用してください: https://www.elastic.co/guide/en/elasticsearch/guide/current/index-doc.html –