Я использую mongodb + springdata. Мой документ выглядит так:
@Entity
@Document(collection="MyCollection")
public final class InfoItemMongoDBDocument {
@Id
private ObjectId id;
@Column
private String name;
@Column
@Indexed
private int isFixed = 0;
@Column
private List<DocumentCopies> copy;
Где DocumentCopies - POJO. Можно ли установить дополнительный индекс в одном из полей DocumentCopies, используя аннотации Spring.
Большое спасибо!
Да, вам нужна форма "точка ноты", ссылающаяся на поле в вашем другом POJO, которое должно быть проиндексировано:
@Document(collection="MyCollection")
@CompoundIndexes({
@CompoundIndex( name="copy.childField", def="{'copy.childField': 1}")
})
Где "childField" - это имя вашего поля/свойства, которое индексируется.