关于集合属性的Spring Data Neo4j @Index注释

时间:2017-11-29 07:11:47

标签: neo4j spring-data-neo4j neo4j-ogm spring-data-neo4j-5

SDN @Index能否正确处理集合属性,如下所示:

@Index(unique = false)     
private Set<Long> optionIds; 

1 个答案:

答案 0 :(得分:1)

这是可行的,应该可行,应在属性optionIds上为给定标签创建索引。

但很可能这不会像你期望的那样有效。问题来自Neo4j如何索引数组(以及它不能索引集合的事实 - 只有列表,它不能索引数组中的单个元素)。

整个数组将被索引,然后可以再次由整个数组查找。如果要按整个集进行索引查找,请使用有序集,以便在存储的数组中ID总是以相同的顺序(Set由OGM存储为数组)。

您无法通过索引数组中的各个元素进行索引查找。