Spring-data-neo4j не индексирует идентификатор объекта - PullRequest
2 голосов
/ 12 марта 2012

У меня есть это @ NodeEntity

@GraphId @Indexed
private Long id;
private String email;
private String password;
@Indexed
private String names;
private boolean registered;

Однако все поля индексируются (независимо от аннотаций), кроме свойства id.Я знаю это, потому что я запрашиваю индекс с помощью *:* и вызываю .getPropertyKeys() для возвращенного IndexHits.

Это ошибка в SDN, или я должен настроить что-то другое для того, чтобы идентификатор былиндексируется также.(С другой стороны, использование QueryResultBuilder возвращает объекты с их идентификаторами.

1 Ответ

2 голосов
/ 13 марта 2012

@GraphId предоставляется Neo4j (внутренний идентификатор узла), он не индексируется, и вы можете использовать repository.findOne() или template.getNode(id) для поиска узлов с этим идентификатором.

Я думаю, вы неправильно поняли: IndexHit<Node> возвращает действительные узлы, а не индексированные поля.

Как вы «запрашиваете индекс»?

...