mongodb に保存したい複合オブジェクトがあります (Spring アノテーションを使用)。オブジェクトは次のとおりです。
@Document(collection="person")
class Person {
@Id
private String id;
private Address address;
private String name;
}
および複合クラス Address:
@Document
class Address {
@Indexed
private Long countryId;
private String street;
@Indexed
private String city
}
person コレクションの一部として国と都市の両方をインデックス化する必要があります。残念ながら、それらのインデックスは作成されません。インデックスを作成する方法はありますか?
私は動作しますがエレガントではない以下を試しました:
@Document(collection="person")
@CompoundIndexes({
@CompoundIndex(name = "countryId", def = "{'address.countryId': 1}")
})
class Person {