Spring 集合上的数据 Neo4j @Index 注释 属性
Spring Data Neo4j @Index annotation on collection property
SDN @Index
能否在集合属性上正常工作,如下所示:
@Index(unique = false)
private Set<Long> optionIds;
这是可能的并且应该有效,应该在 属性 optionIds
上为给定的标签创建一个索引。
但这很可能不会像您预期的那样工作。问题来自 Neo4j 索引数组的方式(以及它不能索引集合的事实 - 只能列表并且它不能索引数组中的单个元素)。
整个数组将被索引,然后可以通过整个数组再次查找。如果您想按整个集合进行索引查找,请使用排序集合,以便 ID 在存储的数组中始终保持相同的顺序(Set
由 OGM 存储为数组)。
您不能通过索引数组中的单个元素进行索引查找。
SDN @Index
能否在集合属性上正常工作,如下所示:
@Index(unique = false)
private Set<Long> optionIds;
这是可能的并且应该有效,应该在 属性 optionIds
上为给定的标签创建一个索引。
但这很可能不会像您预期的那样工作。问题来自 Neo4j 索引数组的方式(以及它不能索引集合的事实 - 只能列表并且它不能索引数组中的单个元素)。
整个数组将被索引,然后可以通过整个数组再次查找。如果您想按整个集合进行索引查找,请使用排序集合,以便 ID 在存储的数组中始终保持相同的顺序(Set
由 OGM 存储为数组)。
您不能通过索引数组中的单个元素进行索引查找。