我有一个共同的实体类:
@NodeEntity
public class Entity {
/*** Common Fields ***/
@GraphId
protected Long nodeId;
@Indexed(level = Indexed.Level.INSTANCE)
protected Long id;
@Indexed(level = Indexed.Level.INSTANCE)
protected String someProperty;
...
}
一个扩展 Entiy 类的 Employee 类:
public class Employee extends Entity {
@Indexed
private String someOtherProperty;
...
}
我在测试中注意到:
@Autowired private GraphDatabaseService service;
Node node1 = service.index().forNodes("Employee").get("id", 1l).getSingle();
不返回任何值,而
Node node2 = service.index().forNodes("Employee").get("someProperty", "someValue").getSingle();
Node node3 = service.index().forNodes("Employee").get("someOtherProperty", "someOtherValue").getSingle();
两者都按预期返回。
我尝试将“id”的名称更改为其他文字,并使用 1(数字)和“1”(字符串)进行搜索,但情况仍然相同。我怀疑它与数值有关。
所以我想知道我是否以错误的方式使用@Indexed?
使用:neo4j-version:1.8 spring-data-neo4j.version:2.1.0.RC4